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 14328 for NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests – NEMO

Ignore:
Timestamp:
2021-01-22T12:09:05+01:00 (3 years ago)
Author:
ayoung
Message:

Pulling changes from trunk from r14237 through to r14327 (current)

Location:
NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT
Files:
39 edited
5 copied

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT

    • Property svn:externals
      •  

        old new  
        99 
        1010# SETTE 
        11 ^/utils/CI/sette_wave@13990         sette 
         11^/utils/CI/sette@14244        sette 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/BENCH/MY_SRC/usrdef_istate.F90

    r14223 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/BENCH/MY_SRC/usrdef_sbc.F90

    r14223 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/C1D_ASICS/cpp_C1D_ASICS.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_c1d key_qco key_iomput 
     1 bld::tool::fppkeys   key_c1d key_qco key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/CANAL/cpp_CANAL.fcm

    r14229 r14328  
    1  bld::tool::fppkeys key_iomput key_qco  
     1 bld::tool::fppkeys key_xios key_qco  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/CPL_OASIS/cpp_CPL_OASIS.fcm

    r14229 r14328  
    1 bld::tool::fppkeys   key_si3 key_top key_iomput key_oasis3 key_qco 
     1bld::tool::fppkeys   key_si3 key_top key_xios key_oasis3 key_qco 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DOME/EXPREF/1_namelist_cfg

    r14216 r14328  
    1818/ 
    1919!----------------------------------------------------------------------- 
     20&namusr_def    !   User defined :   OVERFLOW configuration 
     21!----------------------------------------------------------------------- 
     22   !                       !  type of vertical coordinate 
     23   ln_zco      = .false.      ! z-coordinate 
     24   ln_zps      = .true.       ! z-partial-step coordinate 
     25   ln_sco      = .false.      ! s-coordinate 
     26   rn_dx       =   5000.   !  horizontal resolution   [meters] 
     27   rn_dz       =     60.   !  vertical   resolution   [meters] 
     28   rn_f0       =  1.e-4    !  coriolis [s-1] 
     29/ 
     30!----------------------------------------------------------------------- 
    2031&namrun        !   parameters of the run 
    2132!----------------------------------------------------------------------- 
     
    105116!----------------------------------------------------------------------- 
    106117   ln_traadv_fct = .true. !  FCT scheme 
    107       nn_fct_h   =  4            !  =2/4, horizontal 2nd / 4th order 
     118      nn_fct_h   =  2            !  =2/4, horizontal 2nd / 4th order 
    108119      nn_fct_v   =  2            !  =2/4, vertical   2nd / COMPACT 4th order 
    109120/ 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DOME/EXPREF/file_def_nemo-oce.xml

    r14216 r14328  
    88    --> 
    99     
    10     <file_definition type="one_file" name="@expname@" sync_freq="12h" min_digits="4"> 
    11       <file_group id="12h" output_freq="12h"  output_level="10" enabled=".TRUE." >  <!-- 12h files -->   
     10    <file_definition type="one_file" name="@expname@" sync_freq="1d" min_digits="4"> 
     11      <file_group id="1d" output_freq="1d"  output_level="10" enabled=".TRUE." >  <!-- 1d files -->   
    1212  
    1313   <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DOME/EXPREF/namelist_cfg

    r14216 r14328  
    33!!>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    44! 
    5 ! 
     5!----------------------------------------------------------------------- 
     6&namusr_def    !   User defined :   OVERFLOW configuration 
     7!----------------------------------------------------------------------- 
     8   !                       !  type of vertical coordinate 
     9   ln_zco      = .false.      ! z-coordinate 
     10   ln_zps      = .true.       ! z-partial-step coordinate 
     11   ln_sco      = .false.      ! s-coordinate 
     12   rn_dx       =   5000.   !  horizontal resolution   [meters] 
     13   rn_dz       =     60.   !  vertical   resolution   [meters] 
     14   rn_f0       =  1.e-4    !  coriolis [s-1] 
     15/ 
    616!----------------------------------------------------------------------- 
    717&namrun        !   parameters of the run 
     
    92102!----------------------------------------------------------------------- 
    93103&namtra_adv    !   advection scheme for tracer 
    94 !----------------------------------------------------------------------- 
     104!---------------------------------------------------------------------- 
    95105   ln_traadv_fct = .true. !  FCT scheme 
    96       nn_fct_h   =  4            !  =2/4, horizontal 2nd / 4th order 
     106      nn_fct_h   =  2            !  =2/4, horizontal 2nd / 4th order 
    97107      nn_fct_v   =  2            !  =2/4, vertical   2nd / COMPACT 4th order 
    98108/ 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DOME/MY_SRC/usrdef_istate.F90

    r14133 r14328  
    1616   USE phycst         ! physical constants 
    1717   USE eosbn2, ONLY: rn_a0 
     18   USE dom_oce 
    1819   ! 
    1920   USE in_out_manager ! I/O manager 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DOME/cpp_DOME.fcm

    r14229 r14328  
    1  bld::tool::fppkeys key_iomput key_agrif key_linssh 
     1 bld::tool::fppkeys key_xios key_agrif key_linssh 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DONUT/EXPREF/file_def_nemo-ice.xml

    r14226 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/DONUT/cpp_DONUT.fcm

    r14229 r14328  
    1  bld::tool::fppkeys key_si3 key_qco key_iomput 
     1 bld::tool::fppkeys key_si3 key_qco key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICB/MY_SRC/step.F90

    r14227 r14328  
    9898      ENDIF 
    9999      IF( kstp == nit000 + 1 )   lk_agrif_fstep = .FALSE. 
    100 # if defined key_iomput 
     100# if defined key_xios 
    101101      IF( Agrif_Nbstepint() == 0 )   CALL iom_swap( cxios_context ) 
    102102# endif 
     
    150150      ENDIF 
    151151      ! 
    152 #if defined key_iomput 
     152#if defined key_xios 
    153153      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    154154      ! Finalize contextes if end of simulation or error detected 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICB/cpp_ICB.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_iomput key_qco  
     1 bld::tool::fppkeys   key_xios key_qco  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_ADV1D/MY_SRC/usrdef_sbc.F90

    r14072 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_ADV1D/cpp_ICE_ADV1D.fcm

    r14232 r14328  
    1 bld::tool::fppkeys key_si3 key_iomput key_linssh 
     1bld::tool::fppkeys key_si3 key_xios key_linssh 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_ADV2D/MY_SRC/usrdef_sbc.F90

    r13999 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_ADV2D/cpp_ICE_ADV2D.fcm

    r14232 r14328  
    1 bld::tool::fppkeys key_si3 key_linssh key_iomput 
     1bld::tool::fppkeys key_si3 key_linssh key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_AGRIF/MY_SRC/usrdef_sbc.F90

    r14072 r14328  
    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/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_AGRIF/cpp_ICE_AGRIF.fcm

    r14229 r14328  
    1 bld::tool::fppkeys key_agrif key_si3 key_linssh key_iomput 
     1bld::tool::fppkeys key_agrif key_si3 key_linssh key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_RHEO/MY_SRC/usrdef_sbc.F90

    r14063 r14328  
    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 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ICE_RHEO/cpp_ICE_RHEO.fcm

    r14232 r14328  
    1 bld::tool::fppkeys key_si3 key_linssh key_iomput 
     1bld::tool::fppkeys key_si3 key_linssh key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ISOMIP+/cpp_ISOMIP+.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_iomput  
     1 bld::tool::fppkeys   key_xios  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/ISOMIP/cpp_ISOMIP.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_iomput  
     1 bld::tool::fppkeys   key_xios  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/LOCK_EXCHANGE/cpp_LOCK_EXCHANGE.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_qco key_iomput  
     1 bld::tool::fppkeys   key_qco key_xios  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/OVERFLOW/cpp_OVERFLOW.fcm

    r14229 r14328  
    1 bld::tool::fppkeys   key_qco key_iomput  
     1bld::tool::fppkeys   key_qco key_xios  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/STATION_ASF/MY_SRC/diawri.F90

    r14072 r14328  
    6363CONTAINS 
    6464 
    65 #if defined key_iomput 
    66    !!---------------------------------------------------------------------- 
    67    !!   'key_iomput'                                        use IOM library 
     65#if defined key_xios 
     66   !!---------------------------------------------------------------------- 
     67   !!   'key_xios'                                        use IOM library 
    6868   !!---------------------------------------------------------------------- 
    6969   INTEGER FUNCTION dia_wri_alloc() 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/STATION_ASF/MY_SRC/nemogcm.F90

    r14229 r14328  
    3434   USE mppini         ! shared/distributed memory setting (mpp_init routine) 
    3535   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined) 
    36 #if defined key_iomput 
     36#if defined key_xios 
    3737   USE xios           ! xIOserver 
    3838#endif 
     
    113113      CALL nemo_closefile 
    114114      ! 
    115 #if defined key_iomput 
     115#if defined key_xios 
    116116      CALL xios_finalize  ! end mpp communications with xios 
    117117#else 
     
    148148      !                             !-------------------------------------------------! 
    149149      ! 
    150 #if defined key_iomput 
     150#if defined key_xios 
    151151      IF( Agrif_Root() ) THEN 
    152152         CALL xios_initialize( "for_xios_mpi_id", return_comm=ilocal_comm )   ! nemo local communicator given by xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/STATION_ASF/MY_SRC/step_c1d.F90

    r14227 r14328  
    7979      IF( lrst_oce       )   CALL rst_write( kstp, Nbb, Nnn )  ! write output ocean restart file 
    8080      ! 
    81 #if defined key_iomput 
     81#if defined key_xios 
    8282      IF( kstp == nitend .OR. nstop > 0 )   CALL xios_context_finalize()   ! needed for XIOS 
    8383      ! 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/STATION_ASF/MY_SRC/stpctl.F90

    r14072 r14328  
    3131   PUBLIC stp_ctl           ! routine called by step.F90 
    3232 
    33    INTEGER                ::   nrunid   ! netcdf file id 
    34    INTEGER, DIMENSION(3)  ::   nvarid   ! netcdf variable id 
     33   INTEGER, PARAMETER         ::   jpvar = 3 
     34   INTEGER                    ::   nrunid   ! netcdf file id 
     35   INTEGER, DIMENSION(jpvar)  ::   nvarid   ! netcdf variable id 
    3536   !!---------------------------------------------------------------------- 
    3637   !! NEMO/SAS 4.0 , NEMO Consortium (2018) 
     
    5960      INTEGER, INTENT(in   ) ::   Kmm      ! ocean time level index 
    6061      !! 
     62      INTEGER, PARAMETER              ::   jptst = 3 
    6163      INTEGER                         ::   ji                                    ! dummy loop indices 
    6264      INTEGER                         ::   idtime, istatus 
    63       INTEGER , DIMENSION(4)          ::   iareasum, iareamin, iareamax 
    64       INTEGER , DIMENSION(3,3)        ::   iloc                                  ! min/max loc indices 
    65       REAL(wp)                        ::   zzz                                   ! local real 
    66       REAL(wp), DIMENSION(4)          ::   zmax, zmaxlocal 
     65      INTEGER , DIMENSION(jptst)      ::   iareasum, iareamin, iareamax 
     66      INTEGER , DIMENSION(3,jptst)    ::   iloc                                  ! min/max loc indices 
     67      REAL(wp)                        ::   zzz                                   ! local real  
     68      REAL(wp), DIMENSION(jpvar+1)    ::   zmax 
     69      REAL(wp), DIMENSION(jptst)      ::   zmaxlocal 
    6770      LOGICAL                         ::   ll_wrtstp, ll_colruns, ll_wrtruns, ll_0oce 
    6871      LOGICAL, DIMENSION(jpi,jpj)     ::   llmsk 
     
    122125      zmax(2) = MAXVAL( ABS( qns(:,:) ), mask = llmsk )                         ! max non-solar heat flux 
    123126      zmax(3) = MAXVAL( ABS( emp(:,:) ), mask = llmsk )                         ! max E-P 
    124       zmax(4) = REAL( nstop, wp )                                               ! stop indicator 
     127      zmax(jpvar+1) = REAL( nstop, wp )                                         ! stop indicator 
    125128      ! 
    126129      !                                   !==               get global extrema             ==! 
    127130      !                                   !==  done by all processes if writting run.stat  ==! 
    128131      IF( ll_colruns ) THEN 
    129          zmaxlocal(:) = zmax(:) 
    130          CALL mpp_max( "stpctl", zmax )          ! max over the global domain 
    131          nstop = NINT( zmax(4) )                 ! update nstop indicator (now sheared among all local domains) 
     132         zmaxlocal(:) = zmax(1:jptst) 
     133         CALL mpp_max( "stpctl", zmax )          ! max over the global domain: ok even of ll_0oce = .true. 
     134         nstop = NINT( zmax(jpvar+1) )           ! update nstop indicator (now sheared among all local domains) 
    132135      ELSE 
    133136         ! if no ocean point: MAXVAL returns -HUGE => we must overwrite this value to avoid error handling bellow. 
    134          IF( ll_0oce )   zmax(1:3) = 0._wp       ! default "valid" values... 
    135       ENDIF 
    136       !                                   !==               error handling               ==! 
     137         IF( ll_0oce )   zmax(1:jptst) = 0._wp        ! default "valid" values... 
     138      ENDIF 
    137139      !                                   !==              write "run.stat" files              ==! 
    138140      !                                   !==  done only by 1st subdomain at writting timestep  ==! 
    139141      IF( ll_wrtruns ) THEN 
    140          WRITE(numrun,9500) kt, zmax(1), zmax(2), zmax(3) 
    141          DO ji = 1, 3 
     142         WRITE(numrun,9500) kt, zmax(1:jptst) 
     143         DO ji = 1, jpvar 
    142144            istatus = NF90_PUT_VAR( nrunid, nvarid(ji), (/zmax(ji)/), (/kt/), (/1/) ) 
    143145         END DO 
    144          IF( kt == nitend ) istatus = NF90_CLOSE(nrunid) 
     146         IF( kt == nitend )   istatus = NF90_CLOSE(nrunid) 
    145147      END IF 
    146148      !                                   !==               error handling               ==! 
    147149      !                                   !==  done by all processes at every time step  ==! 
    148150      ! 
    149       IF(   zmax(1) >    5._wp .OR.   &                   ! too large wind stress         ( > 5 N/m^2 ) 
    150          &  zmax(2) > 2000._wp .OR.   &                   ! too large non-solar heat flux ( > 2000 W/m^2 ) 
    151          &  zmax(3) > 1.E-3_wp .OR.   &                   ! too large net freshwater flux ( > 1.E-3 kg/m^2/s ) 
    152          &  ISNAN( zmax(1) + zmax(2) + zmax(3) ) .OR.   &               ! NaN encounter in the tests 
    153          &  ABS(   zmax(1) + zmax(2) + zmax(3) ) > HUGE(1._wp) ) THEN   ! Infinity encounter in the tests 
     151      IF(   zmax(1) >    5._wp .OR.   &                       ! too large wind stress         ( > 5 N/m^2 ) 
     152         &  zmax(2) > 2000._wp .OR.   &                       ! too large non-solar heat flux ( > 2000 W/m^2 ) 
     153         &  zmax(3) > 1.E-3_wp .OR.   &                       ! too large net freshwater flux ( > 1.E-3 kg/m^2/s ) 
     154         & ISNAN( SUM(zmax(1:jptst)) ) .OR.   &               ! NaN encounter in the tests 
     155         & ABS(   SUM(zmax(1:jptst)) ) > HUGE(1._wp) ) THEN   ! Infinity encounter in the tests 
    154156         ! 
    155157         iloc(:,:) = 0 
     
    163165            ! find which subdomain has the max. 
    164166            iareamin(:) = jpnij+1   ;   iareamax(:) = 0   ;   iareasum(:) = 0 
    165             DO ji = 1, 4 
     167            DO ji = 1, jptst 
    166168               IF( zmaxlocal(ji) == zmax(ji) ) THEN 
    167169                  iareamin(ji) = narea   ;   iareamax(ji) = narea   ;   iareasum(ji) = 1 
     
    176178            iloc(1:2,2) = MAXLOC( ABS( qns(:,:) ), mask = llmsk ) 
    177179            iloc(1:2,3) = MINLOC( ABS( emp(:,:) ), mask = llmsk ) 
    178             DO ji = 1, 3   ! local domain indices ==> global domain indices, excluding halos 
     180            DO ji = 1, jptst   ! local domain indices ==> global domain indices, excluding halos 
    179181               iloc(1:2,ji) = (/ mig0(iloc(1,ji)), mjg0(iloc(2,ji)) /) 
    180182            END DO 
     
    195197         ! 
    196198         IF( ll_colruns .OR. jpnij == 1 ) THEN   ! all processes synchronized -> use lwp to print in opened ocean.output files 
    197             IF(lwp) THEN 
    198                CALL ctl_stop( ctmp1, ' ', ctmp2, ctmp3, ctmp4, ctmp5, ' ', ctmp6 ) 
    199             ELSE 
    200                nstop = MAX(1, nstop)   ! make sure nstop > 0 (automatically done when calling ctl_stop) 
     199            IF(lwp) THEN   ;   CALL ctl_stop( ctmp1, ' ', ctmp2, ctmp3, ctmp4, ctmp5, ' ', ctmp6 ) 
     200            ELSE           ;   nstop = MAX(1, nstop)   ! make sure nstop > 0 (automatically done when calling ctl_stop) 
    201201            ENDIF 
    202202         ELSE                                    ! only mpi subdomains with errors are here -> STOP now 
     
    239239 
    240240      WRITE(clfmt, '(i1)') INT(LOG10(REAL(jpnij  ,wp))) + 1     ! how many digits to we need to write ? (we decide max = 9) 
    241 !!! WRITE(clsum, '(i'//clfmt//')') ksum                   ! this is creating a compilation error with AGRIF 
     241      !!! WRITE(clsum, '(i'//clfmt//')') ksum                   ! this is creating a compilation error with AGRIF 
    242242      cl4 = '(i'//clfmt//')'   ;   WRITE(clsum, cl4) ksum 
    243243      WRITE(clfmt, '(i1)') INT(LOG10(REAL(MAX(1,jpnij-1),wp))) + 1    ! how many digits to we need to write ? (we decide max = 9) 
    244244      cl4 = '(i'//clfmt//')'   ;   WRITE(clmin, cl4) kmin-1 
    245       WRITE(clmax, cl4) kmax-1 
     245                                   WRITE(clmax, cl4) kmax-1 
    246246      ! 
    247247      WRITE(clfmt, '(i1)') INT(LOG10(REAL(jpiglo,wp))) + 1      ! how many digits to we need to write jpiglo? (we decide max = 9) 
     
    259259      ELSE 
    260260         WRITE(clfmt, '(i1)') INT(LOG10(REAL(jpk,wp))) + 1      ! how many digits to we need to write jpk? (we decide max = 9) 
    261 !!! WRITE(clk, '(i'//clfmt//')') kloc(3)               ! this is creating a compilation error with AGRIF 
     261         !!! WRITE(clk, '(i'//clfmt//')') kloc(3)               ! this is creating a compilation error with AGRIF 
    262262         cl4 = '(i'//clfmt//')'   ;   WRITE(clk, cl4) kloc(3)   ! this is ok with AGRIF 
    263263         WRITE(cdline,9400) TRIM(ADJUSTL(clkt)), TRIM(ADJUSTL(cdprefix)), pval, TRIM(cli), TRIM(clj),    TRIM(clk), TRIM(clsuff) 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/STATION_ASF/cpp_STATION_ASF.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_si3 key_c1d key_qco key_iomput 
     1 bld::tool::fppkeys   key_si3 key_c1d key_qco key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/SWG/cpp_SWG.fcm

    r14229 r14328  
    1 bld::tool::fppkeys key_iomput key_qco key_RK3 
     1bld::tool::fppkeys key_xios key_qco key_RK3 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/TSUNAMI/EXPREF/namelist_cfg

    r14225 r14328  
    2525   rn_dx       =     10.   !  x horizontal resolution   [km] 
    2626   rn_dy       =     10.   !  y horizontal resolution   [km] 
    27    rn_dz       =    100.   !  z vertical resolution      [m] 
    2827   rn_0xratio  =      0.2  !  x-domain ratio of the 0 
    2928   rn_0yratio  =      0.4  !  y-domain ratio of the 0 
    30    nn_fcase    =      0    !  F computation (0:f0, 1:Beta, 2:real) 
     29   nn_fcase    =      0    !  Coriolis frequency(f) computation (0:f0, 1:Beta plan, 2:real) 
    3130   rn_ppgphi0  =    38.5   !  Reference latitude      [degrees] 
    3231   nn_perio    =      7 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/TSUNAMI/MY_SRC/stpmlf.F90

    r14225 r14328  
    9898      ENDIF 
    9999      IF( kstp == nit000 + 1 )   lk_agrif_fstep = .FALSE. 
    100 # if defined key_iomput 
     100# if defined key_xios 
    101101      IF( Agrif_Nbstepint() == 0 )   CALL iom_swap( cxios_context ) 
    102102# endif 
     
    181181      ENDIF 
    182182 
    183 #if defined key_iomput 
     183#if defined key_xios 
    184184      !>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 
    185185      ! Finalize contextes if end of simulation or error detected 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/TSUNAMI/MY_SRC/usrdef_nam.F90

    r14225 r14328  
    3333   REAL(wp), PUBLIC ::   rn_dx      =   30.  ! x horizontal resolution   [km] 
    3434   REAL(wp), PUBLIC ::   rn_dy      =   30.  ! y horizontal resolution   [km] 
    35    REAL(wp), PUBLIC ::   rn_dz      =  500.  ! vertical resolution        [m] 
    3635   REAL(wp), PUBLIC ::   rn_0xratio =    0.5 ! x domain ratio of the 0 
    3736   REAL(wp), PUBLIC ::   rn_0yratio =    0.5 ! x domain ratio of the 0 
     
    6564      ! 
    6665      INTEGER ::   ios      ! Local integer 
    67       REAL(wp)::   zh       ! Local scalars 
    6866      !! 
    69       NAMELIST/namusr_def/  rn_domszx, rn_domszy, rn_domszz, rn_dx, rn_dy, rn_dz, rn_0xratio, rn_0yratio   & 
     67      NAMELIST/namusr_def/  rn_domszx, rn_domszy, rn_domszz, rn_dx, rn_dy, rn_0xratio, rn_0yratio   & 
    7068         &                 , nn_fcase, rn_ppgphi0, nn_perio 
    7169      !!---------------------------------------------------------------------- 
     
    8179         rn_dx = Agrif_Parent(rn_dx)/Agrif_Rhox() 
    8280         rn_dy = Agrif_Parent(rn_dy)/Agrif_Rhoy() 
    83          rn_dz = Agrif_Parent(rn_dz) 
    8481         rn_ppgphi0 = Agrif_Parent(rn_ppgphi0) 
    8582      ENDIF 
    86       rn_0xratio = 0.5 
     83      rn_0xratio = 0.5   ! not really working I guess...  
    8784      rn_0yratio = 0.5 
    8885#endif 
     
    10097         kpj  = nbcellsy + nbghostcells_y_s + nbghostcells_y_n + 2 
    10198      ENDIF 
    102       kpk = MAX( 2, NINT( rn_domszz / rn_dz ) + 1 ) 
    103       ! 
    104       zh  = (kpk-1)*rn_dz 
     99      kpk = 2 
    105100      !                             ! Set the lateral boundary condition of the global domain 
    106101      kperio = 1                    ! TSUNAMI configuration : closed basin 
     
    116111         WRITE(numout,*) '      horizontal x-resolution           rn_dx      = ',     rn_dx, ' km' 
    117112         WRITE(numout,*) '      horizontal y-resolution           rn_dy      = ',     rn_dy, ' km' 
    118          WRITE(numout,*) '      vertical resolution               rn_dz      = ',     rn_dz, '  m' 
    119113         WRITE(numout,*) '      x-domain ratio of the 0           rn_0xratio = ', rn_0xratio 
    120114         WRITE(numout,*) '      y-domain ratio of the 0           rn_0yratio = ', rn_0yratio 
    121          WRITE(numout,*) '          H [m] : ', zh 
    122115         WRITE(numout,*) '      F computation                     nn_fcase   = ',   nn_fcase 
    123116         WRITE(numout,*) '      Reference latitude                rn_ppgphi0 = ', rn_ppgphi0 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/TSUNAMI/cpp_TSUNAMI.fcm

    r14229 r14328  
    1  bld::tool::fppkeys key_qco key_iomput 
     1 bld::tool::fppkeys key_qco key_xios 
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/VORTEX/cpp_VORTEX.fcm

    r14229 r14328  
    1  bld::tool::fppkeys key_iomput key_agrif key_qco  
     1 bld::tool::fppkeys key_xios key_agrif key_qco  
  • NEMO/branches/2020/dev_14237_KERNEL-01_IMMERSE_SEAMOUNT/tests/WAD/cpp_WAD.fcm

    r14229 r14328  
    1  bld::tool::fppkeys   key_iomput key_qco  
     1 bld::tool::fppkeys   key_xios key_qco  
Note: See TracChangeset for help on using the changeset viewer.