Ignore:
Timestamp:
Dec 6, 2022, 12:01:16 AM (22 months ago)
Author:
lguez
Message:

Sync latest trunk changes to Ocean_skin

Location:
LMDZ6/branches/Ocean_skin
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/branches/Ocean_skin

  • LMDZ6/branches/Ocean_skin/libf/phylmd/cpl_mod.F90

    r4020 r4368  
    6666  REAL, ALLOCATABLE, DIMENSION(:,:), SAVE   :: cpl_rriv2D, cpl_rcoa2D, cpl_rlic2D
    6767  !$OMP THREADPRIVATE(cpl_rriv2D,cpl_rcoa2D,cpl_rlic2D)
     68  REAL, ALLOCATABLE, DIMENSION(:,:), SAVE   :: rlic_in_frac2D  ! fraction for continental ice
     69  !$OMP THREADPRIVATE(rlic_in_frac2D)
    6870
    6971! variables read from coupler :
     
    229231    sum_error = sum_error + error
    230232    ALLOCATE(cpl_rlic2D(nbp_lon,jj_nb), stat=error)
     233    sum_error = sum_error + error
     234    ALLOCATE(rlic_in_frac2D(nbp_lon,jj_nb), stat=error)
    231235    sum_error = sum_error + error
    232236    ALLOCATE(read_sst(nbp_lon, jj_nb), stat = error)
     
    11791183!
    11801184
    1181   SUBROUTINE cpl_send_landice_fields(itime, knon, knindex, rlic_in)
     1185  SUBROUTINE cpl_send_landice_fields(itime, knon, knindex, rlic_in, rlic_in_frac)
    11821186! This subroutine cumulates the field for melting ice for each time-step
    11831187! during a coupling period. This routine will not send to coupler. Sending
     
    11931197    INTEGER, DIMENSION(klon), INTENT(IN)      :: knindex
    11941198    REAL, DIMENSION(klon), INTENT(IN)         :: rlic_in
     1199    REAL, DIMENSION(klon), INTENT(IN)         :: rlic_in_frac  ! Fraction for continental ice, can be equal to
     1200                                                               ! pctsrf(:,is_lic) or not, depending on landice_opt
     1201   
    11951202
    11961203! Local varibales
     
    12071214!$OMP END MASTER
    12081215    CALL gath2cpl(rlic_in, rlic2D, knon, knindex)
    1209 
     1216    CALL gath2cpl(rlic_in_frac(:), rlic_in_frac2D(:,:), knon, knindex)
    12101217!*************************************************************************************
    12111218! Reset field to zero in the beginning of a new coupling period
     
    13291336    CALL gath2cpl(pctsrf(:,is_oce), pctsrf2D(:,:,is_oce), klon, unity)
    13301337    CALL gath2cpl(pctsrf(:,is_sic), pctsrf2D(:,:,is_sic), klon, unity)
    1331     CALL gath2cpl(pctsrf(:,is_lic), pctsrf2D(:,:,is_lic), klon, unity)
     1338
     1339
     1340
    13321341
    13331342!*************************************************************************************
     
    13421351        DO j = 1, jj_nb
    13431352           tmp_calv(:,j) = DOT_PRODUCT (cpl_rlic2D(1:nbp_lon,j), &
    1344                 pctsrf2D(1:nbp_lon,j,is_lic)) / REAL(nbp_lon)
     1353                rlic_in_frac2D(1:nbp_lon,j)) / REAL(nbp_lon)
    13451354        ENDDO
    13461355   
     
    13791388            calving(k)=0
    13801389            DO j = 1, jj_nb
    1381                calving(k)= calving(k)+DOT_PRODUCT(cpl_rlic2D(:,j)*area_calving(:,j,k),pctsrf2D(:,j,is_lic))
     1390               calving(k)= calving(k)+DOT_PRODUCT(cpl_rlic2D(:,j)*area_calving(:,j,k),rlic_in_frac2D(:,j))
    13821391            ENDDO
    13831392         ENDDO
Note: See TracChangeset for help on using the changeset viewer.