New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 10386 for NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/ICE/icedyn_adv_umx.F90 – NEMO

Ignore:
Timestamp:
2018-12-14T11:55:21+01:00 (5 years ago)
Author:
smasson
Message:

dev_r10164_HPC09_ESIWACE_PREP_MERGE: safer use of l_full_nf_update (2 lines north fold exchange), see #2133

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/ICE/icedyn_adv_umx.F90

    r10359 r10386  
    123123      !---------------! 
    124124      DO jt = 1, initad 
     125          
     126         l_full_nf_update = .FALSE.   ! false: disable full North fold update (performances) 
    125127         CALL adv_umx( k_order, kt,   1, zdt, zudy, zvdx, zcu_box, zcv_box, zpato(:,:,1) )        ! Open water area  
    126          CALL lbc_lnk( 'icedyn_adv_umx', zpato, 'T',  1. ) 
    127128         CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pa_i(:,:,:) )         ! Ice area 
    128129         CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pv_i(:,:,:) )         ! Ice  volume 
     
    132133            CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pe_i(:,:,jk,:) )   ! Ice  heat content 
    133134         END DO 
    134          CALL lbc_lnk( 'icedyn_adv_umx', pe_i, 'T',  1. ) 
    135  
    136135         CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pv_s(:,:,:) )         ! Snow volume 
    137136         DO jk = 1, nlay_s 
    138137            CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pe_s(:,:,jk,:) )   ! Snow heat content 
    139138         END DO 
    140          CALL lbc_lnk( 'icedyn_adv_umx', pe_s, 'T',  1. ) 
    141  
    142139         IF ( ln_pnd_H12 ) THEN 
    143140            CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pa_ip(:,:,:) )     ! Melt pond fraction 
    144141            CALL adv_umx( k_order, kt, jpl, zdt, zudy, zvdx, zcu_box, zcv_box, pv_ip(:,:,:) )     ! Melt pond volume 
    145             CALL lbc_lnk_multi( 'icedyn_adv_umx', pa_i, 'T',  1., pv_i, 'T',  1., psv_i, 'T',  1., & 
     142         ENDIF 
     143 
     144         l_full_nf_update = jt == initad   ! true: enable full North fold update (performances) when exiting the loop 
     145         CALL lbc_lnk( 'icedyn_adv_umx', zpato, 'T',  1. ) 
     146         CALL lbc_lnk( 'icedyn_adv_umx', pe_i, 'T',  1. ) 
     147         CALL lbc_lnk( 'icedyn_adv_umx', pe_s, 'T',  1. ) 
     148         IF ( ln_pnd_H12 ) THEN 
     149            CALL lbc_lnk_multi( 'icedyn_adv_umx',  pa_i, 'T',  1., pv_i, 'T',  1., psv_i, 'T',  1., & 
    146150                                                & poa_i, 'T',  1., pv_s, 'T',  1., pa_ip, 'T',  1., & 
    147151                                                & pv_ip, 'T',  1. ) 
    148152         ELSE 
    149             CALL lbc_lnk_multi( 'icedyn_adv_umx', pa_i, 'T',  1., pv_i, 'T',  1., psv_i, 'T',  1., & 
     153            CALL lbc_lnk_multi( 'icedyn_adv_umx',  pa_i, 'T',  1., pv_i, 'T',  1., psv_i, 'T',  1., & 
    150154                                                & poa_i, 'T',  1., pv_s, 'T',  1. ) 
    151155         ENDIF 
     156          
    152157      END DO 
    153158      ! 
Note: See TracChangeset for help on using the changeset viewer.