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 14273 for NEMO/trunk/tests – NEMO

Changeset 14273 for NEMO/trunk/tests


Ignore:
Timestamp:
2021-01-06T11:57:45+01:00 (3 years ago)
Author:
smasson
Message:

trunk: fix DONUT and BENCH tests + minor fix in usrdef_sbc.F90 if icethd

Location:
NEMO/trunk/tests
Files:
1 added
7 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/tests/BENCH/MY_SRC/usrdef_istate.F90

    r14223 r14273  
    7272         zfact = REAL(jk-1,wp) / REAL(jpk-1,wp)   ! 0 to 1 to add a basic stratification 
    7373         ! temperature choosen to lead to ~50% ice at the beginning if rn_thres_sst = 0.5 
    74          pts(:,:,jk,jp_tem) = 20._wp*z2d(:,:) - 1._wp - 0.5_wp * zfact    ! -1 to -1.5 +/- 1.0 degG 
     74         pts(ji,jj,jk,jp_tem) = 20._wp*z2d(ji,jj) - 1._wp - 0.5_wp * zfact    ! -1 to -1.5 +/- 1.0 degG 
    7575         ! salinity:   
    76          pts(:,:,jk,jp_sal) = 30._wp + 1._wp * zfact + z2d(:,:)           ! 30 to 31   +/- 0.05 psu 
     76         pts(ji,jj,jk,jp_sal) = 30._wp + 1._wp * zfact + z2d(ji,jj)           ! 30 to 31   +/- 0.05 psu 
    7777         ! velocities: 
    78          pu(:,:,jk) = z2d(:,:) *  0.1_wp * umask(:,:,jk)                  ! +/- 0.005  m/s 
    79          pv(:,:,jk) = z2d(:,:) * 0.01_wp * vmask(:,:,jk)                  ! +/- 0.0005 m/s 
     78         pu(ji,jj,jk) = z2d(ji,jj) *  0.1_wp * umask(ji,jj,jk)                ! +/- 0.005  m/s 
     79         pv(ji,jj,jk) = z2d(ji,jj) * 0.01_wp * vmask(ji,jj,jk)                ! +/- 0.0005 m/s 
    8080      END_3D 
    8181      pts(:,:,jpk,:) = 0._wp 
  • NEMO/trunk/tests/BENCH/MY_SRC/usrdef_sbc.F90

    r14223 r14273  
    3030   PRIVATE 
    3131 
    32    PUBLIC   usrdef_sbc_oce      ! routine called in sbcmod module 
    33    PUBLIC   usrdef_sbc_ice_tau  ! routine called by sbcice_lim.F90 for ice dynamics 
    34    PUBLIC   usrdef_sbc_ice_flx  ! routine called by sbcice_lim.F90 for ice thermo 
     32   PUBLIC   usrdef_sbc_oce      ! routine called by sbcmod.F90 for sbc ocean 
     33   PUBLIC   usrdef_sbc_ice_tau  ! routine called by icestp.F90 for ice dynamics 
     34   PUBLIC   usrdef_sbc_ice_flx  ! routine called by icestp.F90 for ice thermo 
    3535 
    3636   !! * Substitutions 
     
    8383         ! 
    8484      ENDIF 
    85        
    8685      ! 
    8786   END SUBROUTINE usrdef_sbc_oce 
     
    9796      INTEGER, INTENT(in) ::   kt   ! ocean time step 
    9897      ! 
    99       REAL(wp), DIMENSION(jpi,jpj) ::   z2d   ! 2D workspace 
     98      REAL(wp) ::   zztmp 
    10099      INTEGER  ::   ji, jj 
    101100      !!--------------------------------------------------------------------- 
     
    106105      ! 
    107106      DO_2D( 0, 0, 0, 0 ) 
    108          z2d(ji,jj) = 0.1 * ( 0.5 - REAL( mig0(ji) + (mjg0(jj)-1) * Ni0glo, wp ) / REAL( Ni0glo * Nj0glo, wp ) ) 
     107         zztmp = 0.1 * ( 0.5 - REAL( mig0(ji) + (mjg0(jj)-1) * Ni0glo, wp ) / REAL( Ni0glo * Nj0glo, wp ) ) 
     108         utau_ice(ji,jj) = 0.1_wp + zztmp 
     109         vtau_ice(ji,jj) = 0.1_wp + zztmp 
    109110      END_2D 
    110       utau_ice(:,:) = 0.1_wp + z2d(:,:) 
    111       vtau_ice(:,:) = 0.1_wp + z2d(:,:) 
    112111 
    113112      CALL lbc_lnk_multi( 'usrdef_sbc', utau_ice, 'U', -1., vtau_ice, 'V', -1. ) 
     
    121120      !!                     ***  ROUTINE usrdef_sbc_ice_flx  *** 
    122121      !! 
    123       !! ** Purpose :   provide the surface boundary (flux) condition over 
    124       !sea-ice 
     122      !! ** Purpose :   provide the surface boundary (flux) condition over sea-ice 
    125123      !!--------------------------------------------------------------------- 
    126124      INTEGER, INTENT(in) ::   kt   ! ocean time step 
     
    130128      REAL(wp), DIMENSION(jpi,jpj) ::   zsnw   ! snw distribution after wind blowing 
    131129      !!--------------------------------------------------------------------- 
     130#if defined key_si3 
    132131      ! 
    133 #if defined key_si3 
    134132      IF( kt==nit000 .AND. lwp)   WRITE(numout,*)' usrdef_sbc_ice : BENCH case: NO flux forcing' 
    135133      ! 
     
    137135      emp_oce (:,:)   = 0._wp   ! uniform value for freshwater budget (E-P) 
    138136      qsr_oce (:,:)   = 0._wp   ! uniform value for     solar radiation 
    139       qns_oce (:,:)   = 0._wp   ! uniform value for non-solar radiation 
     137      qns_oce (:,:)   = 0._wp   ! uniform value for non-solar heat flux 
    140138 
    141139      ! ice variables 
    142140      alb_ice (:,:,:) = 0.7_wp  ! useless 
    143141      qsr_ice (:,:,:) = 0._wp   ! uniform value for     solar radiation 
    144       qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar radiation 
     142      qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar heat flux 
     143      dqns_ice(:,:,:) = 0._wp   ! uniform value for non solar heat flux sensitivity for ice 
    145144      sprecip (:,:)   = 0._wp   ! uniform value for snow precip 
    146145      evap_ice(:,:,:) = 0._wp   ! uniform value for sublimation 
     
    148147      ! ice fields deduced from above 
    149148      zsnw(:,:) = 1._wp 
    150       !!CALL lim_thd_snwblow( at_i_b, zsnw )  ! snow distribution over ice after 
    151       !wind blowing  
     149      !!CALL lim_thd_snwblow( at_i_b, zsnw )  ! snow distribution over ice after wind blowing  
    152150      emp_ice  (:,:)   = SUM( a_i_b(:,:,:) * evap_ice(:,:,:), dim=3 ) - sprecip(:,:) * zsnw(:,:) 
    153151      emp_oce  (:,:)   = emp_oce(:,:) - sprecip(:,:) * (1._wp - zsnw(:,:) ) 
     
    164162      ! --- shortwave radiation transmitted thru the surface scattering layer (W/m2) --- ! 
    165163      qtr_ice_top(:,:,:) = 0._wp 
    166  
    167164#endif 
    168165 
  • NEMO/trunk/tests/DONUT/EXPREF/file_def_nemo-ice.xml

    r14226 r14273  
    5353       <field field_ref="normstr"          name="normstr" /> 
    5454       <field field_ref="sheastr"          name="sheastr" /> 
    55        <field field_ref="isig1"            name="isig1"   /> 
    56        <field field_ref="isig2"            name="isig2"   /> 
    57        <field field_ref="isig3"            name="isig3"   /> 
     55       <field field_ref="sig1_pnorm"       name="sig1_pnorm"/> 
     56       <field field_ref="sig2_pnorm"       name="sig2_pnorm"/> 
    5857        
    5958       <!-- heat fluxes --> 
     
    6867       <field field_ref="albedo"           name="albedo"     /> 
    6968        
    70      <!-- heat fluxes --> 
    71           <field id="hfxbog"       long_name="heat flux used for bottom ice growth (neg.)"                  unit="W/m2" /> 
    72           <field id="hfxbom"       long_name="heat flux used for bottom ice melt (pos.)"                    unit="W/m2" /> 
    73           <field id="hfxsum"       long_name="heat flux used for surface ice melt"                          unit="W/m2" /> 
    74           <field id="hfxopw"       long_name="heat flux used for open water ice formation"                  unit="W/m2" /> 
    75           <field id="hfxdif"       long_name="heat flux used for ice temperature change"                    unit="W/m2" /> 
    76           <field id="hfxsnw"       long_name="heat flux used for snow melt"                                 unit="W/m2" /> 
    77           <field id="hfxerr"       long_name="heat flux error after heat diffusion"                         unit="W/m2" /> 
    78           <!-- heat fluxes associated with mass exchange --> 
    79           <field id="hfxthd"       long_name="heat fluxes from ice-ocean mass exchange during thermo"       unit="W/m2" /> 
    80           <field id="hfxdyn"       long_name="heat fluxes from ice-ocean mass exchange during dynamic"      unit="W/m2" /> 
    81           <field id="hfxres"       long_name="heat fluxes from undiagnosed processes"                       unit="W/m2" /> 
    82           <field id="hfxsub"       long_name="heat fluxes from ice-atm. mass exchange during sublimation"   unit="W/m2" /> 
    83           <field id="hfxspr"       long_name="heat fluxes from ice-atm. mass exchange during snow precip"   unit="W/m2" /> 
    84           <field id="hfxdhc"       long_name="Heat content variation in snow and ice (neg = ice cooling)"   unit="W/m2" /> 
    85  
    86      <field field_ref="hfxcndtop"        name="hfxcndtop"  /> 
     69       <field field_ref="hfxcndtop"        name="hfxcndtop"  /> 
    8770       <field field_ref="hfxcndbot"        name="hfxcndbot"  /> 
    8871       <field field_ref="hfxsensib"        name="hfxsensib"  /> 
     
    9477       <field field_ref="vfxice"           name="vfxice" /> 
    9578       <field field_ref="vfxsnw"           name="vfxsnw" /> 
    96         
     79 
    9780       <!-- categories --> 
    9881       <field field_ref="icemask_cat"      name="simskcat"/> 
  • NEMO/trunk/tests/ICE_ADV1D/MY_SRC/usrdef_sbc.F90

    r14072 r14273  
    120120      emp_oce (:,:)   = 0._wp   ! uniform value for freshwater budget (E-P) 
    121121      qsr_oce (:,:)   = 0._wp   ! uniform value for     solar radiation 
    122       qns_oce (:,:)   = 0._wp   ! uniform value for non-solar radiation 
     122      qns_oce (:,:)   = 0._wp   ! uniform value for non-solar heat flux 
    123123 
    124124      ! ice variables 
    125125      alb_ice (:,:,:) = 0.7_wp  ! useless 
    126126      qsr_ice (:,:,:) = 0._wp   ! uniform value for     solar radiation 
    127       qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar radiation 
     127      qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar heat flux 
     128      dqns_ice(:,:,:) = 0._wp   ! uniform value for non solar heat flux sensitivity for ice 
    128129      sprecip (:,:)   = 0._wp   ! uniform value for snow precip 
    129130      evap_ice(:,:,:) = 0._wp   ! uniform value for sublimation 
  • NEMO/trunk/tests/ICE_ADV2D/MY_SRC/usrdef_sbc.F90

    r13999 r14273  
    118118      emp_oce (:,:)   = 0._wp   ! uniform value for freshwater budget (E-P) 
    119119      qsr_oce (:,:)   = 0._wp   ! uniform value for     solar radiation 
    120       qns_oce (:,:)   = 0._wp   ! uniform value for non-solar radiation 
     120      qns_oce (:,:)   = 0._wp   ! uniform value for non-solar heat flux 
    121121 
    122122      ! ice variables 
    123123      alb_ice (:,:,:) = 0.7_wp  ! useless 
    124124      qsr_ice (:,:,:) = 0._wp   ! uniform value for     solar radiation 
    125       qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar radiation 
     125      qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar heat flux 
     126      dqns_ice(:,:,:) = 0._wp   ! uniform value for non solar heat flux sensitivity for ice 
    126127      sprecip (:,:)   = 0._wp   ! uniform value for snow precip 
    127128      evap_ice(:,:,:) = 0._wp   ! uniform value for sublimation 
  • NEMO/trunk/tests/ICE_AGRIF/MY_SRC/usrdef_sbc.F90

    r14072 r14273  
    119119      emp_oce (:,:)   = 0._wp   ! uniform value for freshwater budget (E-P) 
    120120      qsr_oce (:,:)   = 0._wp   ! uniform value for     solar radiation 
    121       qns_oce (:,:)   = 0._wp   ! uniform value for non-solar radiation 
     121      qns_oce (:,:)   = 0._wp   ! uniform value for non-solar heat flux 
    122122 
    123123      ! ice variables 
    124124      alb_ice (:,:,:) = 0.7_wp  ! useless 
    125125      qsr_ice (:,:,:) = 0._wp   ! uniform value for     solar radiation 
    126       qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar radiation 
     126      qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar heat flux 
     127      dqns_ice(:,:,:) = 0._wp   ! uniform value for non solar heat flux sensitivity for ice 
    127128      sprecip (:,:)   = 0._wp   ! uniform value for snow precip 
    128129      evap_ice(:,:,:) = 0._wp   ! uniform value for sublimation 
  • NEMO/trunk/tests/ICE_RHEO/MY_SRC/usrdef_sbc.F90

    r14063 r14273  
    179179      emp_oce (:,:)   = 0._wp   ! uniform value for freshwater budget (E-P) 
    180180      qsr_oce (:,:)   = 0._wp   ! uniform value for     solar radiation 
    181       qns_oce (:,:)   = 0._wp   ! uniform value for non-solar radiation 
     181      qns_oce (:,:)   = 0._wp   ! uniform value for non-solar heat flux 
    182182 
    183183      ! ice variables 
    184184      alb_ice (:,:,:) = 0.7_wp  ! useless 
    185185      qsr_ice (:,:,:) = 0._wp   ! uniform value for     solar radiation 
    186       qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar radiation 
     186      qns_ice (:,:,:) = 0._wp   ! uniform value for non-solar heat flux 
     187      dqns_ice(:,:,:) = 0._wp   ! uniform value for non solar heat flux sensitivity for ice 
    187188      sprecip (:,:)   = 0._wp   ! uniform value for snow precip 
    188189      evap_ice(:,:,:) = 0._wp   ! uniform value for sublimation 
Note: See TracChangeset for help on using the changeset viewer.