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 13632 for NEMO – NEMO

Changeset 13632 for NEMO


Ignore:
Timestamp:
2020-10-19T10:53:30+02:00 (4 years ago)
Author:
mocavero
Message:

Add neighborhood collectives calls in the NEMO test - ticket #2496

Location:
NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests
Files:
1 deleted
81 edited
1 copied

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/EXPREF/namelist_cfg_orca025_like

    r13286 r13632  
    7777!!                                                                    !! 
    7878!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    79 !!   namdrg_top    top    friction                                      (ln_OFF =F & ln_isfcav=T) 
    80 !!   namdrg_bot    bottom friction                                      (ln_OFF =F) 
     79!!   namdrg_top    top    friction                                      (ln_drg_OFF =F & ln_isfcav=T) 
     80!!   namdrg_bot    bottom friction                                      (ln_drg_OFF =F) 
    8181!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    8282!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/EXPREF/namelist_cfg_orca12_like

    r13286 r13632  
    7777!!                                                                    !! 
    7878!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    79 !!   namdrg_top    top    friction                                      (ln_OFF =F & ln_isfcav=T) 
    80 !!   namdrg_bot    bottom friction                                      (ln_OFF =F) 
     79!!   namdrg_top    top    friction                                      (ln_drg_OFF =F & ln_isfcav=T) 
     80!!   namdrg_bot    bottom friction                                      (ln_drg_OFF =F) 
    8181!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    8282!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/EXPREF/namelist_cfg_orca1_like

    r13286 r13632  
    7777!!                                                                    !! 
    7878!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    79 !!   namdrg_top    top    friction                                      (ln_OFF =F & ln_isfcav=T) 
    80 !!   namdrg_bot    bottom friction                                      (ln_OFF =F) 
     79!!   namdrg_top    top    friction                                      (ln_drg_OFF =F & ln_isfcav=T) 
     80!!   namdrg_bot    bottom friction                                      (ln_drg_OFF =F) 
    8181!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    8282!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/MY_SRC/usrdef_istate.F90

    r13295 r13632  
    9595      pv( :,:,jpk  ) = 0._wp 
    9696      ! 
     97#if defined key_mpi3 
     98      CALL lbc_lnk_nc_multi('usrdef_istate', pssh, 'T',  1. )            ! apply boundary conditions 
     99      CALL lbc_lnk_nc_multi('usrdef_istate',  pts, 'T',  1. )            ! apply boundary conditions 
     100      CALL lbc_lnk_nc_multi('usrdef_istate',   pu, 'U', -1. )            ! apply boundary conditions 
     101      CALL lbc_lnk_nc_multi('usrdef_istate',   pv, 'V', -1. )            ! apply boundary conditions 
     102#else 
    97103      CALL lbc_lnk('usrdef_istate', pssh, 'T',  1. )            ! apply boundary conditions 
    98104      CALL lbc_lnk('usrdef_istate',  pts, 'T',  1. )            ! apply boundary conditions 
    99105      CALL lbc_lnk('usrdef_istate',   pu, 'U', -1. )            ! apply boundary conditions 
    100106      CALL lbc_lnk('usrdef_istate',   pv, 'V', -1. )            ! apply boundary conditions 
     107#endif 
    101108       
    102109   END SUBROUTINE usr_def_istate 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/MY_SRC/usrdef_sbc.F90

    r13295 r13632  
    120120      vtau_ice(:,:) = 0.1_wp + z2d(:,:) 
    121121 
     122#if defined key_mpi3 
     123      CALL lbc_lnk_nc_multi( 'usrdef_sbc', utau_ice, 'U', -1., vtau_ice, 'V', -1. ) 
     124#else 
    122125      CALL lbc_lnk_multi( 'usrdef_sbc', utau_ice, 'U', -1., vtau_ice, 'V', -1. ) 
     126#endif 
    123127#endif 
    124128      ! 
     
    137141      REAL(wp), DIMENSION(:,:,:), INTENT(in)  ::   phi    ! ice thickness 
    138142      !! 
    139       REAL(wp) ::   zfr1, zfr2                 ! local variables 
    140143      REAL(wp), DIMENSION(jpi,jpj) ::   zsnw   ! snw distribution after wind blowing 
    141144      !!--------------------------------------------------------------------- 
     
    172175      qsr_tot (:,:) = at_i_b(:,:) * qsr_oce(:,:) + SUM( a_i_b(:,:,:) * qsr_ice(:,:,:), dim=3 ) 
    173176 
    174       ! --- shortwave radiation transmitted below the surface (W/m2, see Grenfell Maykut 77) --- ! 
    175       zfr1 = ( 0.18 * ( 1.0 - cldf_ice ) + 0.35 * cldf_ice )            ! transmission when hi>10cm 
    176       zfr2 = ( 0.82 * ( 1.0 - cldf_ice ) + 0.65 * cldf_ice )            ! zfr2 such that zfr1 + zfr2 to equal 1 
    177       ! 
    178       WHERE    ( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) <  0.1_wp )       ! linear decrease from hi=0 to 10cm   
    179          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * ( zfr1 + zfr2 * ( 1._wp - phi(:,:,:) * 10._wp ) ) 
    180       ELSEWHERE( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) >= 0.1_wp )       ! constant (zfr1) when hi>10cm 
    181          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * zfr1 
    182       ELSEWHERE                                                         ! zero when hs>0 
    183          qtr_ice_top(:,:,:) = 0._wp  
    184       END WHERE 
     177      ! --- shortwave radiation transmitted thru the surface scattering layer (W/m2) --- ! 
     178      qtr_ice_top(:,:,:) = 0._wp 
     179 
    185180#endif 
    186181 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/BENCH/MY_SRC/usrdef_zgr.F90

    r13286 r13632  
    210210 
    211211      ! 
     212#if defined key_mpi3 
     213      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
     214#else 
    212215      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
     216#endif 
    213217      ! 
    214218      k_bot(:,:) = INT( z2d(:,:) )           ! =jpkm1 over the ocean point, =0 elsewhere 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/EXPREF/file_def_nemo-oce.xml

    r9572 r13632  
    1515     <field field_ref="soce" />  
    1616     <field field_ref="ssh"  /> 
    17      <field field_ref="salgrad"  /> 
    18      <field field_ref="ke_zint"  /> 
     17     <field field_ref="socegrad"  /> 
     18     <field field_ref="eken_int"  /> 
    1919     <field field_ref="relvor"  /> 
    2020     <field field_ref="potvor"  /> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/EXPREF/namelist_cfg

    r12489 r13632  
    2020&namusr_def    !   User defined :   CANAL configuration: Flat bottom, beta-plane 
    2121!----------------------------------------------------------------------- 
    22    rn_domszx   =   3600.   !  x horizontal size         [km] 
    23    rn_domszy   =   1800.   !  y horizontal size         [km] 
    24    rn_domszz   =   5000.   !  z vertical size            [m] 
    25    rn_dx       =     30.   !  x horizontal resolution   [km] 
    26    rn_dy       =     30.   !  y horizontal resolution   [km] 
    27    rn_dz       =    500.   !  z vertical resolution      [m] 
     22   rn_domszx   =   2000.   !  x horizontal size         [km] 
     23   rn_domszy   =   1000.   !  y horizontal size         [km] 
     24   rn_domszz   =   1000.   !  z vertical size            [m] 
     25   rn_dx       =     10.   !  x horizontal resolution   [km] 
     26   rn_dy       =     10.   !  y horizontal resolution   [km] 
     27   rn_dz       =   1000.   !  z vertical resolution      [m] 
    2828   rn_0xratio  =      0.5  !  x-domain ratio of the 0 
    2929   rn_0yratio  =      0.5  !  y-domain ratio of the 0 
     
    3131   rn_ppgphi0  =    38.5   !  Reference latitude      [degrees] 
    3232   rn_u10      =      0.   !  10m wind speed              [m/s] 
    33      rn_windszx =   4000.   !  longitudinal wind extension   [km] 
    34      rn_windszy =   4000.   !  latitudinal wind extension    [km] 
    35      rn_uofac  =      0.   !  Uoce multiplicative factor (0.:absolute or 1.:relative winds) 
     33     rn_windszx =   90.    !  longitudinal wind extension   [km] 
     34     rn_windszy =   90.    !  latitudinal wind extension    [km] 
     35!!clem     rn_uofac  =     0.    !  Uoce multiplicative factor (0.:absolute or 1.:relative winds) 
    3636   rn_vtxmax   =      1.   !  initial vortex max current  [m/s] 
    3737   rn_uzonal   =      1.   !  initial zonal current       [m/s] 
    38      rn_ujetszx =   4000.   !  longitudinal jet extension   [km] 
    39      rn_ujetszy =   4000.   !  latitudinal jet extension    [km] 
     38     rn_ujetszx =   4000.  !  longitudinal jet extension   [km] 
     39     rn_ujetszy =   400.   !  latitudinal jet extension    [km] 
    4040   nn_botcase  =      0    !  bottom definition (0:flat, 1:bump) 
    41    nn_initcase =      1    !  initial condition case (0:rest, 1:zonal current, 2:current shear, 3: gaussian zonal current, 
    42       !                    !                          4: geostrophic zonal pulse, 5: vortex) 
    43    ln_sshnoise =  .false.  !  add random noise on initial ssh 
    44    rn_lambda   =     50.   ! gaussian lambda 
     41   nn_initcase =      1    !  initial condition case 
     42   !                       !          -1 : stratif at rest 
     43   !                       !           0 : rest 
     44   !                       !           1 : zonal current 
     45   !                       !           2 : current shear 
     46   !                       !           3 : gaussian zonal current 
     47   !                       !           4 : geostrophic zonal pulse 
     48   !                       !           5 : baroclinic vortex 
     49   ln_sshnoise =  .FALSE.  !  add random noise on initial ssh 
     50   rn_lambda   =     50.   !  gaussian lambda 
     51   nn_perio    = 1 
    4552/ 
    4653!----------------------------------------------------------------------- 
     
    5966!----------------------------------------------------------------------- 
    6067   ln_linssh   =  .false.  !  =T  linear free surface  ==>>  model level are fixed in time 
    61    rn_Dt      =   1440.   !  time step for the dynamics (and tracer if nn_acc=0) 
    62    rn_atfp     =   0.05    !  asselin time filter parameter 
     68   rn_Dt      =   1200.    !  time step for the dynamics (and tracer if nn_acc=0) 
     69   rn_atfp     =   0.0     !  asselin time filter parameter 
     70/ 
     71!----------------------------------------------------------------------- 
     72&namcfg        !   parameters of the configuration                      (default: use namusr_def in namelist_cfg) 
     73!----------------------------------------------------------------------- 
     74   ln_write_cfg = .false.   !  (=T) create the domain configuration file 
     75      cn_domcfg_out = "domain_cfg" ! newly created domain configuration filename 
    6376/ 
    6477!!====================================================================== 
     
    108121!!                                                                    !! 
    109122!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    110 !!   namdrg_top    top    friction                                      (ln_OFF =F & ln_isfcav=T) 
    111 !!   namdrg_bot    bottom friction                                      (ln_OFF =F) 
     123!!   namdrg_top    top    friction                                      (ln_drg_OFF =F & ln_isfcav=T) 
     124!!   namdrg_bot    bottom friction                                      (ln_drg_OFF =F) 
    112125!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    113126!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    117130&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    118131!----------------------------------------------------------------------- 
    119    ln_OFF     = .true.    !  free-slip       : Cd = 0 
     132   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    120133/ 
    121134!!====================================================================== 
     
    134147!----------------------------------------------------------------------- 
    135148   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    136    !                            !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     149   !                            !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    137150   rn_a0       =  0.28        !  thermal expension coefficient (for simplified equation of state) 
    138151   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
     
    148161   ln_traadv_OFF = .false. !  No tracer advection 
    149162   ln_traadv_cen = .false. !  2nd order centered scheme 
    150       nn_cen_h   =  4            !  =2/4, horizontal 2nd order CEN / 4th order CEN 
    151       nn_cen_v   =  4            !  =2/4, vertical   2nd order CEN / 4th order COMPACT 
     163      nn_cen_h   =  2            !  =2/4, horizontal 2nd order CEN / 4th order CEN 
     164      nn_cen_v   =  2            !  =2/4, vertical   2nd order CEN / 4th order COMPACT 
    152165   ln_traadv_fct = .false. !  FCT scheme 
    153       nn_fct_h   =  2            !  =2/4, horizontal 2nd / 4th order 
     166      nn_fct_h   =  4            !  =2/4, horizontal 2nd / 4th order 
    154167      nn_fct_v   =  2            !  =2/4, vertical   2nd / COMPACT 4th order 
    155168   ln_traadv_mus = .false. !  MUSCL scheme 
     
    162175&namtra_ldf    !   lateral diffusion scheme for tracers                 (default: NO selection) 
    163176!----------------------------------------------------------------------- 
    164    ln_traldf_OFF   =  .true.  !  No explicit diffusion 
     177   !                       !  Operator type: 
     178   ln_traldf_OFF   = .true.    !  No explicit diffusion 
     179   ln_traldf_lap   = .false.   !    laplacian operator 
     180   ln_traldf_blp   = .false.   !  bilaplacian operator 
     181   ! 
     182   !                       !  Direction of action: 
     183   ln_traldf_lev   = .false.   !  iso-level 
     184   ln_traldf_hor   = .true.    !  horizontal  (geopotential) 
     185   ln_traldf_iso   = .false.   !  iso-neutral (standard operator) 
     186   ln_traldf_triad = .false.   !  iso-neutral (triad    operator) 
     187   ! 
     188   !                             !  iso-neutral options: 
     189   ln_traldf_msc   = .false.   !  Method of Stabilizing Correction      (both operators) 
     190   rn_slpmax       =  0.01     !  slope limit                           (both operators) 
     191   ln_triad_iso    = .false.   !  pure horizontal mixing in ML              (triad only) 
     192   rn_sw_triad     = 1         !  =1 switching triad ; =0 all 4 triads used (triad only) 
     193   ln_botmix_triad = .false.   !  lateral mixing on bottom                  (triad only) 
     194   ! 
     195   !                       !  Coefficients: 
     196   nn_aht_ijk_t    = 31         !  space/time variation of eddy coefficient: 
     197      !                             !   =-20 (=-30)    read in eddy_diffusivity_2D.nc (..._3D.nc) file 
     198      !                             !   =  0           constant 
     199      !                             !   = 10 F(k)      =ldf_c1d 
     200      !                             !   = 20 F(i,j)    =ldf_c2d 
     201      !                             !   = 21 F(i,j,t)  =Treguier et al. JPO 1997 formulation 
     202      !                             !   = 30 F(i,j,k)  =ldf_c2d * ldf_c1d 
     203      !                             !   = 31 F(i,j,k,t)=F(local velocity and grid-spacing) 
     204      !                        !  time invariant coefficients:  aht0 = 1/2  Ud*Ld   (lap case) 
     205      !                             !                           or   = 1/12 Ud*Ld^3 (blp case) 
     206      rn_Ud        = 0.01           !  lateral diffusive velocity [m/s] (nn_aht_ijk_t= 0, 10, 20, 30) 
     207      rn_Ld        = 200.e+3        !  lateral diffusive length   [m]   (nn_aht_ijk_t= 0, 10) 
    165208/ 
    166209!!====================================================================== 
     
    183226      nn_dynkeg     = 0       ! scheme for grad(KE): =0   C2  ;  =1   Hollingsworth correction 
    184227   ln_dynadv_cen2 = .false. !  flux form - 2nd order centered scheme 
    185    ln_dynadv_ubs = .true.  !  flux form - 3rd order UBS      scheme 
     228   ln_dynadv_ubs  = .true.  !  flux form - 3rd order UBS      scheme 
    186229/ 
    187230!----------------------------------------------------------------------- 
    188231&namdyn_vor    !   Vorticity / Coriolis scheme                          (default: NO selection) 
    189232!----------------------------------------------------------------------- 
    190    ln_dynvor_ene = .true.  !  energy conserving scheme 
    191    ln_dynvor_ens = .false. !  enstrophy conserving scheme 
    192    ln_dynvor_mix = .false. !  mixed scheme 
     233   ln_dynvor_ene = .false.  !  energy conserving scheme 
     234   ln_dynvor_ens = .false.  !  enstrophy conserving scheme 
     235   ln_dynvor_mix = .false.  !  mixed scheme 
    193236   ln_dynvor_een = .false.  !  energy & enstrophy scheme 
     237   ln_dynvor_enT = .false.  !  energy conserving scheme (T-point) 
     238   ln_dynvor_eeT = .true.   !  energy conserving scheme (een using e3t) 
    194239      nn_een_e3f = 0             !  e3f = masked averaging of e3t divided by 4 (=0) or by the sum of mask (=1) 
    195240/ 
     
    210255         !                          !                     = 1 Boxcar over   nn_e sub-steps 
    211256         !                          !                     = 2 Boxcar over 2*nn_e  "    " 
    212       ln_bt_auto    = .false.    ! Number of sub-step defined from: 
     257      ln_bt_auto    = .true.    ! Number of sub-step defined from: 
    213258         nn_e      =  24         ! =F : the number of sub-step in rn_Dt seconds 
    214259/ 
     
    222267   !                       !  Direction of action  : 
    223268   ln_dynldf_lev =  .false.    !  iso-level 
    224    ln_dynldf_hor =  .true.    !  horizontal (geopotential) 
     269   ln_dynldf_hor =  .false.    !  horizontal (geopotential) 
    225270   ln_dynldf_iso =  .false.    !  iso-neutral 
    226271   !                       !  Coefficient 
    227    nn_ahm_ijk_t  = 20           !  space/time variation of eddy coef 
     272   nn_ahm_ijk_t  = 31           !  space/time variation of eddy coef 
    228273      !                             !  =-30  read in eddy_viscosity_3D.nc file 
    229274      !                             !  =-20  read in eddy_viscosity_2D.nc file 
     
    271316!!                                                                    !! 
    272317!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    273 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    274318!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    275319!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    276320!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
     321<<<<<<< .working 
    277322!!   namflo       float parameters                                      (default: OFF) 
    278323!!   nam_diadct   transports through some sections                      (default: OFF) 
     324||||||| .merge-left.r13465 
     325!!   namflo       float parameters                                      (default: OFF) 
     326!!   nam_diaharm  Harmonic analysis of tidal constituents               (default: OFF) 
     327!!   nam_diadct   transports through some sections                      (default: OFF) 
     328======= 
     329!!   namflo       float parameters                                      ("key_float") 
     330!!   nam_diaharm  Harmonic analysis of tidal constituents               ("key_diaharm") 
     331!!   namdct       transports through some sections                      ("key_diadct") 
     332!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
     333>>>>>>> .merge-right.r13470 
    279334!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
    280335!!   namnc4       netcdf4 chunking and compression settings             ("key_netcdf4") 
     
    285340!----------------------------------------------------------------------- 
    286341   ln_glo_trd  = .false.   ! (T) global domain averaged diag for T, T^2, KE, and PE 
    287    ln_dyn_trd  = .true.   ! (T) 3D momentum trend output 
     342   ln_dyn_trd  = .true.    ! (T) 3D momentum trend output 
    288343   ln_dyn_mxl  = .false.   ! (T) 2D momentum trends averaged over the mixed layer (not coded yet) 
    289344   ln_vor_trd  = .false.   ! (T) 2D barotropic vorticity trends (not coded yet) 
     
    312367&nammpp        !   Massively Parallel Processing                        ("key_mpp_mpi") 
    313368!----------------------------------------------------------------------- 
     369!!   jpni        =   8       !  jpni   number of processors following i (set automatically if < 1) 
     370!!   jpnj        =   1       !  jpnj   number of processors following j (set automatically if < 1) 
    314371/ 
    315372!----------------------------------------------------------------------- 
    316373&namctl        !   Control prints                                       (default: OFF) 
    317374!----------------------------------------------------------------------- 
     375   ln_timing   = .true.   !  timing by routine write out in timing.output file 
     376!!   ln_diacfl   = .true.   !  CFL diagnostics write out in cfl_diagnostics.ascii 
    318377/ 
    319378!----------------------------------------------------------------------- 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/domvvl.F90

    r13295 r13632  
    99   !!            3.6  !  2014-11  (P. Mathiot) add ice shelf capability 
    1010   !!            4.1  !  2019-08  (A. Coward, D. Storkey) rename dom_vvl_sf_swp -> dom_vvl_sf_update for new timestepping 
     11   !!            4.x  ! 2020-02  (G. Madec, S. Techene) introduce ssh to h0 ratio 
    1112   !!---------------------------------------------------------------------- 
    1213 
    13    !!---------------------------------------------------------------------- 
    14    !!   dom_vvl_init     : define initial vertical scale factors, depths and column thickness 
    15    !!   dom_vvl_sf_nxt   : Compute next vertical scale factors 
    16    !!   dom_vvl_sf_update   : Swap vertical scale factors and update the vertical grid 
    17    !!   dom_vvl_interpol : Interpolate vertical scale factors from one grid point to another 
    18    !!   dom_vvl_rst      : read/write restart file 
    19    !!   dom_vvl_ctl      : Check the vvl options 
    20    !!---------------------------------------------------------------------- 
    2114   USE oce             ! ocean dynamics and tracers 
    2215   USE phycst          ! physical constant 
     
    3629   PRIVATE 
    3730 
    38    PUBLIC  dom_vvl_init       ! called by domain.F90 
    39    PUBLIC  dom_vvl_zgr        ! called by isfcpl.F90 
    40    PUBLIC  dom_vvl_sf_nxt     ! called by step.F90 
    41    PUBLIC  dom_vvl_sf_update  ! called by step.F90 
    42    PUBLIC  dom_vvl_interpol   ! called by dynnxt.F90 
    43  
    4431   !                                                      !!* Namelist nam_vvl 
    4532   LOGICAL , PUBLIC :: ln_vvl_zstar           = .FALSE.    ! zstar  vertical coordinate 
     
    6350   REAL(wp)        , ALLOCATABLE, SAVE, DIMENSION(:,:)   :: frq_rst_hdv                 ! retoring period for low freq. divergence 
    6451 
     52#if defined key_qco 
     53   !!---------------------------------------------------------------------- 
     54   !!   'key_qco'      EMPTY MODULE      Quasi-Eulerian vertical coordonate 
     55   !!---------------------------------------------------------------------- 
     56#else 
     57   !!---------------------------------------------------------------------- 
     58   !!   Default key      Old management of time varying vertical coordinate 
     59   !!---------------------------------------------------------------------- 
     60    
     61   !!---------------------------------------------------------------------- 
     62   !!   dom_vvl_init     : define initial vertical scale factors, depths and column thickness 
     63   !!   dom_vvl_sf_nxt   : Compute next vertical scale factors 
     64   !!   dom_vvl_sf_update   : Swap vertical scale factors and update the vertical grid 
     65   !!   dom_vvl_interpol : Interpolate vertical scale factors from one grid point to another 
     66   !!   dom_vvl_rst      : read/write restart file 
     67   !!   dom_vvl_ctl      : Check the vvl options 
     68   !!---------------------------------------------------------------------- 
     69 
     70   PUBLIC  dom_vvl_init       ! called by domain.F90 
     71   PUBLIC  dom_vvl_zgr        ! called by isfcpl.F90 
     72   PUBLIC  dom_vvl_sf_nxt     ! called by step.F90 
     73   PUBLIC  dom_vvl_sf_update  ! called by step.F90 
     74   PUBLIC  dom_vvl_interpol   ! called by dynnxt.F90 
     75    
    6576   !! * Substitutions 
    6677#  include "do_loop_substitute.h90" 
     
    135146      ! 
    136147   END SUBROUTINE dom_vvl_init 
    137    ! 
     148 
     149 
    138150   SUBROUTINE dom_vvl_zgr(Kbb, Kmm, Kaa) 
    139151      !!---------------------------------------------------------------------- 
     
    261273            IF( cn_cfg == "orca" .OR. cn_cfg == "ORCA" ) THEN 
    262274               IF( nn_cfg == 3 ) THEN   ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2 
    263                   ii0 = 103   ;   ii1 = 111        
    264                   ij0 = 128   ;   ij1 = 135   ;    
     275                  ii0 = 103 + nn_hls - 1   ;   ii1 = 111 + nn_hls - 1       
     276                  ij0 = 128 + nn_hls       ;   ij1 = 135 + nn_hls 
    265277                  frq_rst_e3t( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) ) =  0.0_wp 
    266278                  frq_rst_hdv( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) ) =  1.e0_wp / rn_Dt 
     
    322334      LOGICAL                ::   ll_do_bclinic         ! local logical 
    323335      REAL(wp), DIMENSION(jpi,jpj)     ::   zht, z_scale, zwu, zwv, zhdiv 
    324       REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ze3t 
     336      REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   ze3t 
     337      LOGICAL , DIMENSION(:,:,:), ALLOCATABLE ::   llmsk 
    325338      !!---------------------------------------------------------------------- 
    326339      ! 
     
    426439         !                       ! d - thickness diffusion transport: boundary conditions 
    427440         !                             (stored for tracer advction and continuity equation) 
     441#if defined key_mpi3 
     442         CALL lbc_lnk_nc_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
     443#else 
    428444         CALL lbc_lnk_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
     445#endif 
    429446 
    430447         ! 4 - Time stepping of baroclinic scale factors 
    431448         ! --------------------------------------------- 
     449#if defined key_mpi3 
     450         CALL lbc_lnk_nc_multi( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp ) 
     451#else 
    432452         CALL lbc_lnk( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp ) 
     453#endif 
    433454         tilde_e3t_a(:,:,:) = tilde_e3t_b(:,:,:) + rDt * tmask(:,:,:) * tilde_e3t_a(:,:,:) 
    434455 
    435456         ! Maximum deformation control 
    436457         ! ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    437          ze3t(:,:,jpk) = 0._wp 
    438          DO jk = 1, jpkm1 
    439             ze3t(:,:,jk) = tilde_e3t_a(:,:,jk) / e3t_0(:,:,jk) * tmask(:,:,jk) * tmask_i(:,:) 
    440          END DO 
    441          z_tmax = MAXVAL( ze3t(:,:,:) ) 
    442          CALL mpp_max( 'domvvl', z_tmax )                 ! max over the global domain 
    443          z_tmin = MINVAL( ze3t(:,:,:) ) 
    444          CALL mpp_min( 'domvvl', z_tmin )                 ! min over the global domain 
     458         ALLOCATE( ze3t(jpi,jpj,jpk), llmsk(jpi,jpj,jpk) ) 
     459         DO_3D( 0, 0, 0, 0, 1, jpkm1 ) 
     460            ze3t(ji,jj,jk) = tilde_e3t_a(ji,jj,jk) / e3t_0(ji,jj,jk) * tmask(ji,jj,jk) * tmask_i(ji,jj) 
     461         END_3D 
     462         ! 
     463         llmsk(   1:Nis1,:,:) = .FALSE.   ! exclude halos from the checked region 
     464         llmsk(Nie1: jpi,:,:) = .FALSE. 
     465         llmsk(:,   1:Njs1,:) = .FALSE. 
     466         llmsk(:,Nje1: jpj,:) = .FALSE. 
     467         ! 
     468         llmsk(Nis0:Nie0,Njs0:Nje0,:) = tmask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp                  ! define only the inner domain 
     469         z_tmax = MAXVAL( ze3t(:,:,:), mask = llmsk )   ;   CALL mpp_max( 'domvvl', z_tmax )   ! max over the global domain 
     470         z_tmin = MINVAL( ze3t(:,:,:), mask = llmsk )   ;   CALL mpp_min( 'domvvl', z_tmin )   ! min over the global domain 
    445471         ! - ML - test: for the moment, stop simulation for too large e3_t variations 
    446472         IF( ( z_tmax >  rn_zdef_max ) .OR. ( z_tmin < - rn_zdef_max ) ) THEN 
    447             IF( lk_mpp ) THEN 
    448                CALL mpp_maxloc( 'domvvl', ze3t, tmask, z_tmax, ijk_max ) 
    449                CALL mpp_minloc( 'domvvl', ze3t, tmask, z_tmin, ijk_min ) 
    450             ELSE 
    451                ijk_max = MAXLOC( ze3t(:,:,:) ) 
    452                ijk_max(1) = mig0_oldcmp(ijk_max(1)) 
    453                ijk_max(2) = mjg0_oldcmp(ijk_max(2)) 
    454                ijk_min = MINLOC( ze3t(:,:,:) ) 
    455                ijk_min(1) = mig0_oldcmp(ijk_min(1)) 
    456                ijk_min(2) = mjg0_oldcmp(ijk_min(2)) 
    457             ENDIF 
     473            CALL mpp_maxloc( 'domvvl', ze3t, llmsk, z_tmax, ijk_max ) 
     474            CALL mpp_minloc( 'domvvl', ze3t, llmsk, z_tmin, ijk_min ) 
    458475            IF (lwp) THEN 
    459476               WRITE(numout, *) 'MAX( tilde_e3t_a(:,:,:) / e3t_0(:,:,:) ) =', z_tmax 
     
    464481            ENDIF 
    465482         ENDIF 
     483         DEALLOCATE( ze3t, llmsk ) 
    466484         ! - ML - end test 
    467485         ! - ML - Imposing these limits will cause a baroclinicity error which is corrected for below 
     
    10301048   END SUBROUTINE dom_vvl_ctl 
    10311049 
     1050#endif 
     1051 
    10321052   !!====================================================================== 
    10331053END MODULE domvvl 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/stpctl.F90

    r13216 r13632  
    4949      !! 
    5050      !! ** Method  : - Save the time step in numstp 
    51       !!              - Print it each 50 time steps 
    5251      !!              - Stop the run IF problem encountered by setting nstop > 0 
    5352      !!                Problems checked: |ssh| maximum larger than 10 m 
     
    119118      !                                   !==            test of local extrema           ==! 
    120119      !                                   !==  done by all processes at every time step  ==! 
    121       llmsk(:,:,1) = ssmask(:,:) == 1._wp 
     120      ! 
     121      llmsk(   1:Nis1,:,:) = .FALSE.                                              ! exclude halos from the checked region 
     122      llmsk(Nie1: jpi,:,:) = .FALSE. 
     123      llmsk(:,   1:Njs1,:) = .FALSE. 
     124      llmsk(:,Nje1: jpj,:) = .FALSE. 
     125      ! 
     126      llmsk(Nis0:Nie0,Njs0:Nje0,1) = ssmask(Nis0:Nie0,Njs0:Nje0) == 1._wp         ! define only the inner domain 
    122127      IF( ll_wd ) THEN 
    123128         zmax(1) = MAXVAL( ABS( ssh(:,:,Kmm) + ssh_ref ), mask = llmsk(:,:,1) )   ! ssh max 
     
    125130         zmax(1) = MAXVAL( ABS( ssh(:,:,Kmm)           ), mask = llmsk(:,:,1) )   ! ssh max 
    126131      ENDIF 
    127       llmsk(:,:,:) = umask(:,:,:) == 1._wp 
     132      llmsk(Nis0:Nie0,Njs0:Nje0,:) = umask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
    128133      zmax(2) = MAXVAL(  ABS( uu(:,:,:,Kmm) ), mask = llmsk )                     ! velocity max (zonal only) 
    129       llmsk(:,:,:) = tmask(:,:,:) == 1._wp 
     134      llmsk(Nis0:Nie0,Njs0:Nje0,:) = tmask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
    130135      zmax(3) = MAXVAL( -ts(:,:,:,jp_sal,Kmm), mask = llmsk )                     ! minus salinity max 
    131136      zmax(4) = MAXVAL(  ts(:,:,:,jp_sal,Kmm), mask = llmsk )                     !       salinity max 
     
    143148         zmax(5:8) = 0._wp 
    144149      ENDIF 
    145       zmax(9) = REAL( nstop, wp )                                              ! stop indicator 
     150      zmax(9) = REAL( nstop, wp )                                                 ! stop indicator 
    146151      !                                   !==               get global extrema             ==! 
    147152      !                                   !==  done by all processes if writting run.stat  ==! 
     
    183188            IF( lwm .AND. kt /= nitend )   istatus = NF90_CLOSE(nrunid) 
    184189            ! get global loc on the min/max 
    185             CALL mpp_maxloc( 'stpctl', ABS(ssh(:,:,         Kmm)), ssmask(:,:  ), zzz, iloc(1:2,1) )   ! mpp_maxloc ok if mask = F  
    186             CALL mpp_maxloc( 'stpctl', ABS( uu(:,:,:,       Kmm)),  umask(:,:,:), zzz, iloc(1:3,2) ) 
    187             CALL mpp_minloc( 'stpctl',      ts(:,:,:,jp_sal,Kmm) ,  tmask(:,:,:), zzz, iloc(1:3,3) ) 
    188             CALL mpp_maxloc( 'stpctl',      ts(:,:,:,jp_sal,Kmm) ,  tmask(:,:,:), zzz, iloc(1:3,4) ) 
     190            llmsk(Nis0:Nie0,Njs0:Nje0,1) = ssmask(Nis0:Nie0,Njs0:Nje0 ) == 1._wp         ! define only the inner domain 
     191            CALL mpp_maxloc( 'stpctl', ABS(ssh(:,:,         Kmm)), llmsk(:,:,1), zzz, iloc(1:2,1) )   ! mpp_maxloc ok if mask = F  
     192            llmsk(Nis0:Nie0,Njs0:Nje0,:) = umask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
     193            CALL mpp_maxloc( 'stpctl', ABS( uu(:,:,:,       Kmm)), llmsk(:,:,:), zzz, iloc(1:3,2) ) 
     194            llmsk(Nis0:Nie0,Njs0:Nje0,:) = tmask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
     195            CALL mpp_minloc( 'stpctl',      ts(:,:,:,jp_sal,Kmm) , llmsk(:,:,:), zzz, iloc(1:3,3) ) 
     196            CALL mpp_maxloc( 'stpctl',      ts(:,:,:,jp_sal,Kmm) , llmsk(:,:,:), zzz, iloc(1:3,4) ) 
    189197            ! find which subdomain has the max. 
    190198            iareamin(:) = jpnij+1   ;   iareamax(:) = 0   ;   iareasum(:) = 0 
     
    199207         ELSE                    ! find local min and max locations: 
    200208            ! if we are here, this means that the subdomain contains some oce points -> no need to test the mask used in maxloc 
    201             iloc(1:2,1) = MAXLOC( ABS( ssh(:,:,         Kmm)), mask = ssmask(:,:  ) == 1._wp ) + (/ nimpp - 1, njmpp - 1    /) 
    202             iloc(1:3,2) = MAXLOC( ABS(  uu(:,:,:,       Kmm)), mask =  umask(:,:,:) == 1._wp ) + (/ nimpp - 1, njmpp - 1, 0 /) 
    203             iloc(1:3,3) = MINLOC(       ts(:,:,:,jp_sal,Kmm) , mask =  tmask(:,:,:) == 1._wp ) + (/ nimpp - 1, njmpp - 1, 0 /) 
    204             iloc(1:3,4) = MAXLOC(       ts(:,:,:,jp_sal,Kmm) , mask =  tmask(:,:,:) == 1._wp ) + (/ nimpp - 1, njmpp - 1, 0 /) 
     209            llmsk(Nis0:Nie0,Njs0:Nje0,1) = ssmask(Nis0:Nie0,Njs0:Nje0 ) == 1._wp         ! define only the inner domain 
     210            iloc(1:2,1) = MAXLOC( ABS( ssh(:,:,         Kmm)), mask = llmsk(:,:,1) ) 
     211            llmsk(Nis0:Nie0,Njs0:Nje0,:) = umask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
     212            iloc(1:3,2) = MAXLOC( ABS(  uu(:,:,:,       Kmm)), mask = llmsk(:,:,:) ) 
     213            llmsk(Nis0:Nie0,Njs0:Nje0,:) = tmask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp        ! define only the inner domain 
     214            iloc(1:3,3) = MINLOC(       ts(:,:,:,jp_sal,Kmm) , mask = llmsk(:,:,:) ) 
     215            iloc(1:3,4) = MAXLOC(       ts(:,:,:,jp_sal,Kmm) , mask = llmsk(:,:,:) ) 
     216            DO ji = 1, 4   ! local domain indices ==> global domain indices, excluding halos 
     217               iloc(1:2,ji) = (/ mig0(iloc(1,ji)), mjg0(iloc(2,ji)) /) 
     218            END DO 
    205219            iareamin(:) = narea   ;   iareamax(:) = narea   ;   iareasum(:) = 1         ! this is local information 
    206220         ENDIF 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/trazdf.F90

    r13295 r13632  
    9090         END DO 
    9191!!gm this should be moved in trdtra.F90 and done on all trends 
     92#if defined key_mpi3 
     93         CALL lbc_lnk_nc_multi( 'trazdf', ztrdt, 'T', 1. , ztrds, 'T', 1. ) 
     94#else 
    9295         CALL lbc_lnk_multi( 'trazdf', ztrdt, 'T', 1. , ztrds, 'T', 1. ) 
     96#endif 
    9397!!gm 
    9498         CALL trd_tra( kt, Kmm, Krhs, 'TRA', jp_tem, jptra_zdf, ztrdt ) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/usrdef_istate.F90

    r13295 r13632  
    6666      IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~~~   ' 
    6767      ! 
    68       IF (ln_sshnoise) CALL RANDOM_NUMBER(zrandom) 
    6968      zjetx = ABS(rn_ujetszx)/2. 
    7069      zjety = ABS(rn_ujetszy)/2. 
    7170      ! 
     71      zf0   = 2._wp * omega * SIN( rad * rn_ppgphi0 ) 
     72      ! 
    7273      SELECT CASE(nn_initcase) 
     74 
     75      CASE(-1)    ! stratif at rest 
     76 
     77         ! sea level: 
     78         pssh(:,:) = 0. 
     79         ! temperature: 
     80         pts(:,:,1,jp_tem) = 25. !!30._wp 
     81         pts(:,:,2:jpk,jp_tem) = 22. !!24._wp 
     82         ! salinity:   
     83         pts(:,:,:,jp_sal) = 35._wp 
     84         ! velocities: 
     85         pu(:,:,:) = 0. 
     86         pv(:,:,:) = 0. 
     87 
    7388      CASE(0)    ! rest 
    7489          
     
    98113            zbeta = 2._wp * omega * COS( rad * rn_ppgphi0 ) / ra 
    99114            WHERE( ABS(gphit) <= zjety ) 
    100                pssh(:,:) = - rn_uzonal / grav * ( ff_t(:,:) * gphit(:,:) * 1.e3 + 0.5 * zbeta * gphit(:,:) * gphit(:,:) * 1.e6 ) 
    101             ELSEWHERE 
    102                pssh(:,:) = - rn_uzonal / grav * ( ff_t(:,:) * SIGN(zjety, gphit(:,:)) * 1.e3   & 
     115               pssh(:,:) = - rn_uzonal / grav * ( zf0 * gphit(:,:) * 1.e3 + 0.5 * zbeta * gphit(:,:) * gphit(:,:) * 1.e6 ) 
     116            ELSEWHERE 
     117               pssh(:,:) = - rn_uzonal / grav * ( zf0 * SIGN(zjety, gphit(:,:)) * 1.e3   & 
    103118                  &                             + 0.5 * zbeta * zjety * zjety * 1.e6 ) 
    104119            END WHERE 
     
    109124         pts(:,:,jpk,jp_sal) = 0. 
    110125         DO jk=1, jpkm1 
    111             pts(:,:,jk,jp_sal) = gphit(:,:) 
     126            WHERE( ABS(gphit) <= zjety ) 
     127!!$            WHERE( ABS(gphit) <= zjety*0.5 .AND. ABS(glamt) <= zjety*0.5 ) ! for a square of salt 
     128               pts(:,:,jk,jp_sal) = 35. 
     129            ELSEWHERE 
     130               pts(:,:,jk,jp_sal) = 30. 
     131            END WHERE                     
    112132         END DO 
    113133         ! velocities: 
     
    134154            WHERE( ABS(gphit) <= zjety ) 
    135155               pssh(:,:) = - SIGN(rn_uzonal, gphit(:,:)) / grav   & 
    136                   &        * ( ff_t(:,:) * gphit(:,:) * 1.e3 + 0.5 * zbeta * gphit(:,:) * gphit(:,:) * 1.e6 ) 
     156                  &        * ( zf0 * gphit(:,:) * 1.e3 + 0.5 * zbeta * gphit(:,:) * gphit(:,:) * 1.e6 ) 
    137157            ELSEWHERE 
    138158               pssh(:,:) = - SIGN(rn_uzonal, gphit(:,:)) / grav   & 
    139                   &        * ( ff_t(:,:) * SIGN(zjety, gphit(:,:)) * 1.e3 + 0.5 * zbeta * zjety * zjety * 1.e6 ) 
     159                  &        * ( zf0 * SIGN(zjety, gphit(:,:)) * 1.e3 + 0.5 * zbeta * zjety * zjety * 1.e6 ) 
    140160            END WHERE 
    141161         END SELECT 
     
    143163         pts(:,:,:,jp_tem) = 10._wp 
    144164         ! salinity:   
    145          pts(:,:,:,jp_sal) = 2. 
    146          DO jk=1, jpkm1 
    147             WHERE( ABS(gphiv) <= zjety ) pts(:,:,jk,jp_sal) = 2. + SIGN(1.,gphiv(:,:)) 
     165         pts(:,:,:,jp_sal) = 30. 
     166         DO jk=1, jpkm1 
     167            WHERE( ABS(gphiv) <= zjety ) pts(:,:,jk,jp_sal) = 30. + SIGN(1.,gphiv(:,:)) 
    148168         END DO 
    149169         ! velocities: 
     
    169189               pssh(ji,jj) = pssh(ji,jj-1) - ff_t(ji,jj) / grav * pu(ji,jj,1) * e2t(ji,jj) 
    170190            END_2D 
     191#if defined key_mpi3 
     192            CALL lbc_lnk_nc_multi( 'usrdef_istate', pssh, 'T',  1. ) 
     193#else 
    171194            CALL lbc_lnk( 'usrdef_istate', pssh, 'T',  1. ) 
     195#endif 
    172196         END DO 
    173197          
     
    176200         ! salinity:   
    177201         DO jk=1, jpkm1 
    178             pts(:,:,jk,jp_sal) = gphit(:,:) 
     202            pts(:,:,jk,jp_sal) = pssh(:,:) 
    179203         END DO 
    180204         ! velocities: 
     
    210234         zf0   = 2._wp * omega * SIN( rad * rn_ppgphi0 ) 
    211235         zumax = rn_vtxmax * SIGN(1._wp, zf0) ! Here Anticyclonic: set zumax=-1 for cyclonic 
    212          zlambda = SQRT(2._wp)*rn_lambda       ! Horizontal scale in meters  
     236         zlambda = SQRT(2._wp)*rn_lambda*1.e3       ! Horizontal scale in meters  
    213237         zn2 = 3.e-3**2 
    214238         zH = 0.5_wp * 5000._wp 
     
    281305       
    282306      IF (ln_sshnoise) THEN 
     307         CALL RANDOM_SEED() 
    283308         CALL RANDOM_NUMBER(zrandom) 
    284309         pssh(:,:) = pssh(:,:) + ( 0.1  * zrandom(:,:) - 0.05 ) 
    285310      END IF 
     311#if defined key_mpi3 
     312      CALL lbc_lnk_nc_multi( 'usrdef_istate', pssh, 'T',  1. ) 
     313      CALL lbc_lnk_nc_multi( 'usrdef_istate', pts , 'T',  1. ) 
     314      CALL lbc_lnk_nc_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. ) 
     315#else 
    286316      CALL lbc_lnk( 'usrdef_istate', pssh, 'T',  1. ) 
    287317      CALL lbc_lnk( 'usrdef_istate', pts , 'T',  1. ) 
    288318      CALL lbc_lnk_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. ) 
     319#endif 
    289320 
    290321   END SUBROUTINE usr_def_istate 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/usrdef_nam.F90

    r13286 r13632  
    5050   LOGICAL , PUBLIC ::   ln_sshnoise=.false. ! add random noise on initial ssh 
    5151   REAL(wp), PUBLIC ::   rn_lambda  = 50.    ! gaussian lambda 
     52   INTEGER , PUBLIC ::   nn_perio   =    0   ! periodicity of the channel (0=closed, 1=E-W) 
    5253 
    5354   !!---------------------------------------------------------------------- 
     
    7980      !! 
    8081      NAMELIST/namusr_def/  rn_domszx, rn_domszy, rn_domszz, rn_dx, rn_dy, rn_dz, rn_0xratio, rn_0yratio   & 
    81          &                 , nn_fcase, rn_ppgphi0, rn_vtxmax, rn_uzonal, rn_ujetszx, rn_ujetszy   & 
    82          &                 , rn_u10, rn_windszx, rn_windszy, rn_uofac   & 
    83          &                 , nn_botcase, nn_initcase, ln_sshnoise, rn_lambda 
     82         &                 , nn_fcase, rn_ppgphi0, rn_u10, rn_windszx, rn_windszy & !!, rn_uofac   & 
     83         &                 , rn_vtxmax, rn_uzonal, rn_ujetszx, rn_ujetszy  & 
     84         &                 , nn_botcase, nn_initcase, ln_sshnoise, rn_lambda, nn_perio 
    8485      !!---------------------------------------------------------------------- 
    8586      ! 
     
    148149         WRITE(numout,*) '      add random noise on initial ssh   ln_sshnoise= ', ln_sshnoise 
    149150         WRITE(numout,*) '      Gaussian lambda parameter          rn_lambda = ', rn_lambda 
    150          WRITE(numout,*) '   ' 
    151          WRITE(numout,*) '   Lateral boundary condition of the global domain' 
    152          WRITE(numout,*) '      EW_CANAL : closed basin               jperio = ', kperio 
     151         WRITE(numout,*) '      Periodicity of the basin            nn_perio = ', nn_perio 
    153152      ENDIF 
     153      !                             ! Set the lateral boundary condition of the global domain 
     154      kperio = nn_perio                    ! EW_CANAL configuration : closed basin 
    154155      ! 
    155156   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/usrdef_sbc.F90

    r12740 r13632  
    1717   USE sbc_oce         ! Surface boundary condition: ocean fields 
    1818   USE phycst          ! physical constants 
    19    USE usrdef_nam, ONLY : rn_u10, rn_uofac, rn_windszy  
     19   USE usrdef_nam, ONLY : rn_u10, rn_uofac, rn_windszy, rn_windszx  
    2020   ! 
    2121   USE in_out_manager  ! I/O manager 
     
    6969         ! 
    7070         utau(:,:) = 0._wp 
    71          IF( rn_u10 /= 0. .AND. rn_windszy > 0. ) THEN 
    72             WHERE( ABS(gphit) <= rn_windszy/2. ) utau(:,:) = zrhocd * rn_u10 * rn_u10 
    73          ENDIF 
    7471         vtau(:,:) = 0._wp 
    7572         taum(:,:) = 0._wp 
     
    8178         qsr (:,:) = 0._wp 
    8279         !          
     80      ENDIF 
     81 
     82      IF( rn_u10 /= 0. .AND. rn_windszy > 0. ) THEN 
     83         IF( nyear == 1 .AND. nmonth == 1 .AND. nday <= 10 ) THEN 
     84            WHERE( ABS(gphit) <= rn_windszy/2. .AND. ABS(glamt) <= rn_windszx/2. ) utau(:,:) = zrhocd * rn_u10 * rn_u10 
     85         ELSE 
     86            utau(:,:) = 0. 
     87         ENDIF 
    8388      ENDIF 
    8489 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CANAL/MY_SRC/usrdef_zgr.F90

    r12740 r13632  
    197197         zmaxlam = MAXVAL(glamt) 
    198198         CALL mpp_max( 'usrdef_zgr', zmaxlam )                 ! max over the global domain 
    199          zscl = rpi / zmaxlam 
    200          z2d(:,:) = 0.5 * ( 1. - COS( glamt(:,:) * zscl ) ) 
    201          z2d(:,:) = REAL(jpkm1 - NINT( 0.75 * REAL(jpkm1,wp) * z2d(:,:) ), wp) 
     199         zscl = 0.5 * rpi / zmaxlam 
     200         z2d(:,:) = COS( glamt(:,:) * zscl ) 
     201         z2d(:,:) = REAL(jpkm1 - NINT( 0.5 * REAL(jpkm1,wp) * z2d(:,:) ), wp) 
    202202      END SELECT 
    203203      ! 
     204#if defined key_mpi3 
     205      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
     206#else 
    204207      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
     208#endif 
    205209      ! 
    206210      k_bot(:,:) = NINT( z2d(:,:) )          ! =jpkm1 over the ocean point, =0 elsewhere 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CPL_OASIS/EXPREF/context_nemo.xml

    r12663 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/CPL_OASIS/EXPREF/namelist_cfg

    r12663 r13632  
    254254!!                                                                    !! 
    255255!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    256 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    257 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     256!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     257!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    258258!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    259259!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    448448!!                                                                    !! 
    449449!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    450 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    451450!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    452451!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_cfg

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_cfg_120pts

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_cfg_240pts

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_cfg_60pts

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_ice_cfg

    r10535 r13632  
    8888!------------------------------------------------------------------------------ 
    8989   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    90    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     90   nn_iceini_file   =  1              !  netcdf file provided for initialization 
    9191 
    9292   sn_hti = 'initice_60pts'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_ice_cfg_120pts

    r10431 r13632  
    8888!------------------------------------------------------------------------------ 
    8989   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    90    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     90   nn_iceini_file   =  1              !  netcdf file provided for initialization  
    9191 
    9292   sn_hti = 'initice_120pts'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_ice_cfg_240pts

    r10431 r13632  
    8888!------------------------------------------------------------------------------ 
    8989   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    90    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     90   nn_iceini_file   =  1              !  netcdf file provided for initialization  
    9191 
    9292   sn_hti = 'initice_240pts'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/EXPREF/namelist_ice_cfg_60pts

    r10431 r13632  
    8888!------------------------------------------------------------------------------ 
    8989   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    90    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     90   nn_iceini_file   =  1              !  netcdf file provided for initialization  
    9191 
    9292   sn_hti = 'initice_60pts'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV1D/MY_SRC/usrdef_sbc.F90

    r12377 r13632  
    107107      REAL(wp), DIMENSION(:,:,:), INTENT(in)  ::   phi    ! ice thickness 
    108108      !! 
     109      INTEGER  ::   jl 
    109110      REAL(wp) ::   zfr1, zfr2                 ! local variables 
    110111      REAL(wp), DIMENSION(jpi,jpj) ::   zsnw   ! snw distribution after wind blowing 
     112      REAL(wp), DIMENSION(jpi,jpj) ::   ztri 
    111113      !!--------------------------------------------------------------------- 
    112114      ! 
     
    141143 
    142144      ! --- shortwave radiation transmitted below the surface (W/m2, see Grenfell Maykut 77) --- ! 
    143       zfr1 = ( 0.18 * ( 1.0 - cldf_ice ) + 0.35 * cldf_ice )            ! transmission when hi>10cm 
    144       zfr2 = ( 0.82 * ( 1.0 - cldf_ice ) + 0.65 * cldf_ice )            ! zfr2 such that zfr1 + zfr2 to equal 1 
     145      cloud_fra(:,:) = pp_cldf 
     146      ztri(:,:) = 0.18 * ( 1.0 - cloud_fra(:,:) ) + 0.35 * cloud_fra(:,:)  ! surface transmission when hi>10cm 
    145147      ! 
    146       WHERE    ( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) <  0.1_wp )       ! linear decrease from hi=0 to 10cm   
    147          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * ( zfr1 + zfr2 * ( 1._wp - phi(:,:,:) * 10._wp ) ) 
    148       ELSEWHERE( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) >= 0.1_wp )       ! constant (zfr1) when hi>10cm 
    149          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * zfr1 
    150       ELSEWHERE                                                         ! zero when hs>0 
    151          qtr_ice_top(:,:,:) = 0._wp  
    152       END WHERE 
    153            
     148      DO jl = 1, jpl 
     149         WHERE    ( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) <  0.1_wp )     ! linear decrease from hi=0 to 10cm   
     150            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ( ztri(:,:) + ( 1._wp - ztri(:,:) ) * ( 1._wp - phi(:,:,jl) * 10._wp ) ) 
     151         ELSEWHERE( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) >= 0.1_wp )     ! constant (ztri) when hi>10cm 
     152            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ztri(:,:) 
     153         ELSEWHERE                                                         ! zero when hs>0 
     154            qtr_ice_top(:,:,jl) = 0._wp 
     155         END WHERE 
     156      ENDDO 
     157          
     158  
    154159   END SUBROUTINE usrdef_sbc_ice_flx 
    155160 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV2D/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV2D/EXPREF/namelist_cfg

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV2D/EXPREF/namelist_ice_cfg

    r10535 r13632  
    8686!------------------------------------------------------------------------------ 
    8787   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    88    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     88   nn_iceini_file   =  1              !  netcdf file provided for initialization  
    8989 
    9090   sn_hti = 'initice'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_ADV2D/MY_SRC/usrdef_sbc.F90

    r12377 r13632  
    107107      REAL(wp), DIMENSION(:,:,:), INTENT(in) ::   phi    ! ice thickness 
    108108      !! 
     109      INTEGER  ::   jl 
    109110      REAL(wp) ::   zfr1, zfr2                 ! local variables 
    110111      REAL(wp), DIMENSION(jpi,jpj) ::   zsnw   ! snw distribution after wind blowing 
     112      REAL(wp), DIMENSION(jpi,jpj) ::   ztri 
    111113      !!--------------------------------------------------------------------- 
    112114      ! 
     
    141143 
    142144      ! --- shortwave radiation transmitted below the surface (W/m2, see Grenfell Maykut 77) --- ! 
    143       zfr1 = ( 0.18 * ( 1.0 - cldf_ice ) + 0.35 * cldf_ice )            ! transmission when hi>10cm 
    144       zfr2 = ( 0.82 * ( 1.0 - cldf_ice ) + 0.65 * cldf_ice )            ! zfr2 such that zfr1 + zfr2 to equal 1 
     145      cloud_fra(:,:) = pp_cldf 
     146      ztri(:,:) = 0.18 * ( 1.0 - cloud_fra(:,:) ) + 0.35 * cloud_fra(:,:)  ! surface transmission when hi>10cm 
    145147      ! 
    146       WHERE    ( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) <  0.1_wp )       ! linear decrease from hi=0 to 10cm   
    147          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * ( zfr1 + zfr2 * ( 1._wp - phi(:,:,:) * 10._wp ) ) 
    148       ELSEWHERE( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) >= 0.1_wp )       ! constant (zfr1) when hi>10cm 
    149          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * zfr1 
    150       ELSEWHERE                                                         ! zero when hs>0 
    151          qtr_ice_top(:,:,:) = 0._wp  
    152       END WHERE 
    153            
     148      DO jl = 1, jpl 
     149         WHERE    ( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) <  0.1_wp )     ! linear decrease from hi=0 to 10cm   
     150            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ( ztri(:,:) + ( 1._wp - ztri(:,:) ) * ( 1._wp - phi(:,:,jl) * 10._wp ) ) 
     151         ELSEWHERE( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) >= 0.1_wp )     ! constant (ztri) when hi>10cm 
     152            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ztri(:,:) 
     153         ELSEWHERE                                                         ! zero when hs>0 
     154            qtr_ice_top(:,:,jl) = 0._wp 
     155         END WHERE 
     156      ENDDO 
     157          
     158  
    154159   END SUBROUTINE usrdef_sbc_ice_flx 
    155160 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_AGRIF/EXPREF/1_namelist_cfg

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_AGRIF/EXPREF/context_nemo.xml

    r12377 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_AGRIF/EXPREF/namelist_cfg

    r12489 r13632  
    106106!!                                                                    !! 
    107107!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    108 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    109 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     108!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     109!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    110110!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    111111!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    115115&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    116116!----------------------------------------------------------------------- 
    117    ln_OFF     = .true.     !  free-slip       : Cd = 0                   
     117   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    118118/ 
    119119!!====================================================================== 
     
    197197!!                                                                    !! 
    198198!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    199 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    200199!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    201200!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_AGRIF/EXPREF/namelist_ice_cfg

    r10535 r13632  
    8686!------------------------------------------------------------------------------ 
    8787   ln_iceini        = .true.          !  activate ice initialization (T) or not (F) 
    88    ln_iceini_file   = .true.          !  netcdf file provided for initialization (T) or not (F) 
     88   nn_iceini_file   =  1              !  netcdf file provided for initialization  
    8989 
    9090   sn_hti = 'initice'                 , -12 ,'hti'   ,  .false.  , .true., 'yearly'  , '' , '', '' 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ICE_AGRIF/MY_SRC/usrdef_sbc.F90

    r12377 r13632  
    107107      REAL(wp), DIMENSION(:,:,:), INTENT(in)  ::   phi    ! ice thickness 
    108108      !! 
     109      INTEGER  ::   jl 
    109110      REAL(wp) ::   zfr1, zfr2                 ! local variables 
    110111      REAL(wp), DIMENSION(jpi,jpj) ::   zsnw   ! snw distribution after wind blowing 
     112      REAL(wp), DIMENSION(jpi,jpj) ::   ztri 
    111113      !!--------------------------------------------------------------------- 
    112114      ! 
     
    141143 
    142144      ! --- shortwave radiation transmitted below the surface (W/m2, see Grenfell Maykut 77) --- ! 
    143       zfr1 = ( 0.18 * ( 1.0 - cldf_ice ) + 0.35 * cldf_ice )            ! transmission when hi>10cm 
    144       zfr2 = ( 0.82 * ( 1.0 - cldf_ice ) + 0.65 * cldf_ice )            ! zfr2 such that zfr1 + zfr2 to equal 1 
     145      cloud_fra(:,:) = pp_cldf 
     146      ztri(:,:) = 0.18 * ( 1.0 - cloud_fra(:,:) ) + 0.35 * cloud_fra(:,:)  ! surface transmission when hi>10cm 
    145147      ! 
    146       WHERE    ( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) <  0.1_wp )       ! linear decrease from hi=0 to 10cm   
    147          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * ( zfr1 + zfr2 * ( 1._wp - phi(:,:,:) * 10._wp ) ) 
    148       ELSEWHERE( phs(:,:,:) <= 0._wp .AND. phi(:,:,:) >= 0.1_wp )       ! constant (zfr1) when hi>10cm 
    149          qtr_ice_top(:,:,:) = qsr_ice(:,:,:) * zfr1 
    150       ELSEWHERE                                                         ! zero when hs>0 
    151          qtr_ice_top(:,:,:) = 0._wp  
    152       END WHERE 
     148      DO jl = 1, jpl 
     149         WHERE    ( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) <  0.1_wp )     ! linear decrease from hi=0 to 10cm   
     150            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ( ztri(:,:) + ( 1._wp - ztri(:,:) ) * ( 1._wp - phi(:,:,jl) * 10._wp ) ) 
     151         ELSEWHERE( phs(:,:,jl) <= 0._wp .AND. phi(:,:,jl) >= 0.1_wp )     ! constant (ztri) when hi>10cm 
     152            qtr_ice_top(:,:,jl) = qsr_ice(:,:,jl) * ztri(:,:) 
     153         ELSEWHERE                                                         ! zero when hs>0 
     154            qtr_ice_top(:,:,jl) = 0._wp 
     155         END WHERE 
     156      ENDDO 
    153157           
    154158   END SUBROUTINE usrdef_sbc_ice_flx 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ISOMIP+/EXPREF/namelist_cfg

    r12905 r13632  
    261261!!                                                                    !! 
    262262!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    263 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    264 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     263!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     264!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    265265!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    266266!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    273273/ 
    274274!----------------------------------------------------------------------- 
    275 &namdrg_top    !   TOP friction                                         (ln_OFF =F & ln_isfcav=T) 
     275&namdrg_top    !   TOP friction                                         (ln_drg_OFF =F & ln_isfcav=T) 
    276276!----------------------------------------------------------------------- 
    277277   rn_Cd0      =  2.5e-3   !  drag coefficient [-] 
     
    279279/ 
    280280!----------------------------------------------------------------------- 
    281 &namdrg_bot    !   BOTTOM friction                                      (ln_OFF =F) 
     281&namdrg_bot    !   BOTTOM friction                                      (ln_drg_OFF =F) 
    282282!----------------------------------------------------------------------- 
    283283   rn_Cd0      =  2.5e-3    !  drag coefficient [-] 
     
    311311                                 ! 
    312312   !                     ! S-EOS coefficients (ln_seos=T): 
    313    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     313   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    314314   !                     ! L-EOS coefficients (ln_seos=T): 
    315    !                             !  rd(T,S,Z)*rau0 = rau0*(-a0*dT+b0*dS) 
     315   !                             !  rd(T,S,Z)*rho0 = rho0*(-a0*dT+b0*dS) 
    316316   rn_a0       =  3.7330e-5      !  thermal expension coefficient 
    317317   rn_b0       =  7.8430e-4      !  saline  expension coefficient 
     
    461461!!                                                                    !! 
    462462!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    463 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    464463!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    465464!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
     
    478477/ 
    479478!----------------------------------------------------------------------- 
    480 &namptr        !   Poleward Transport Diagnostic                        (default: OFF) 
    481479!----------------------------------------------------------------------- 
    482480/ 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ISOMIP+/MY_SRC/sbcfwb.F90

    r13286 r13632  
    9595         snwice_mass_b(:,:) = 0.e0               ! no sea-ice model is being used : no snow+ice mass 
    9696         snwice_mass  (:,:) = 0.e0 
     97         snwice_fmass (:,:) = 0.e0 
    9798#endif 
    9899         ! 
     
    205206            ! 
    206207!!gm   ===>>>>  lbc_lnk should be useless as all the computation is done over the whole domain ! 
     208#if defined key_mpi3 
     209            CALL lbc_lnk_nc_multi( 'sbcfwb', zerp_cor, 'T', 1. ) 
     210#else 
    207211            CALL lbc_lnk( 'sbcfwb', zerp_cor, 'T', 1. ) 
     212#endif 
    208213            ! 
    209214            emp(:,:) = emp(:,:) + zerp_cor(:,:) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ISOMIP/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ISOMIP/EXPREF/namelist_cfg

    r12489 r13632  
    227227!!                                                                    !! 
    228228!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    229 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    230 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     229!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     230!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    231231!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    232232!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    236236&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    237237!----------------------------------------------------------------------- 
    238    ln_OFF     = .false.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     238   ln_drg_OFF = .false.   !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    239239   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    240240   ln_non_lin = .true.     !  non-linear  drag: Cd = Cd0 |U| 
     
    244244/ 
    245245!----------------------------------------------------------------------- 
    246 &namdrg_top    !   TOP friction                                         (ln_OFF =F & ln_isfcav=T) 
     246&namdrg_top    !   TOP friction                                         (ln_drg_OFF =F & ln_isfcav=T) 
    247247!----------------------------------------------------------------------- 
    248248   rn_Cd0     =  2.5e-3    !  drag coefficient [-] 
     
    255255/ 
    256256!----------------------------------------------------------------------- 
    257 &namdrg_bot    !   BOTTOM friction                                      (ln_OFF =F) 
     257&namdrg_bot    !   BOTTOM friction                                      (ln_drg_OFF =F) 
    258258!----------------------------------------------------------------------- 
    259259   rn_Cd0     =  1.e-3    !  drag coefficient [-] 
     
    423423!!                                                                    !! 
    424424!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    425 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    426425!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    427426!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
     
    438437/ 
    439438!----------------------------------------------------------------------- 
    440 &namptr        !   Poleward Transport Diagnostic                        (default: OFF) 
    441439!----------------------------------------------------------------------- 
    442440/ 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/ISOMIP/MY_SRC/usrdef_zgr.F90

    r13295 r13632  
    164164            pe3f (ji,jj,jk) = pe3v(ji,jj,jk) 
    165165         END_3D 
     166#if defined key_mpi3 
     167         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3v , 'V', 1._wp )   ;   CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3vw, 'V', 1._wp ) 
     168         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3f , 'F', 1._wp ) 
     169#else 
    166170         CALL lbc_lnk( 'usrdef_zgr', pe3v , 'V', 1._wp )   ;   CALL lbc_lnk( 'usrdef_zgr', pe3vw, 'V', 1._wp ) 
    167171         CALL lbc_lnk( 'usrdef_zgr', pe3f , 'F', 1._wp ) 
     172#endif 
    168173         DO jk = 1, jpk 
    169174            ! set to z-scale factor if zero (i.e. along closed boundaries) because of lbclnk 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_cen2_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_ubs_cfg

    r12489 r13632  
    110110!!                                                                    !! 
    111111!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    112 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    113 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     112!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     113!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    114114!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    115115!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    119119&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    120120!----------------------------------------------------------------------- 
    121    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     121   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    122122/ 
    123123!!====================================================================== 
     
    137137   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    138138   !                     ! S-EOS coefficients (nn_eos=1): 
    139    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     139   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    140140   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    141141   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
     
    271271!!                                                                    !! 
    272272!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    273 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    274273!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    275274!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_eenH_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_een_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_ene_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_vect_ens_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_flux_cen2_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_flux_ubs_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_eenH_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_een_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_ene_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT4_vect_ens_cfg

    r12489 r13632  
    6565&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    6666!----------------------------------------------------------------------- 
    67    ln_OFF     = .true.    !  free-slip       : Cd = 0                   
     67   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    6868/ 
    6969!----------------------------------------------------------------------- 
     
    7272   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    7373   !                     ! S-EOS coefficients (nn_eos=1): 
    74    !                          !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     74   !                          !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    7575   rn_a0       =  0.2         !  thermal expension coefficient (nn_eos= 1) 
    7676   rn_b0       =  0.          !  saline  expension coefficient (nn_eos= 1) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/LOCK_EXCHANGE/MY_SRC/usrdef_zgr.F90

    r12377 r13632  
    8686      ! the ocean basin surrounded by land (1 grid-point) set through lbc_lnk call as jperio=0  
    8787      z2d(:,:) = 1._wp                    ! surface ocean is the 1st level 
     88#if defined key_mpi3 
     89      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     90#else 
    8891      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     92#endif 
    8993      k_top(:,:) = NINT( z2d(:,:) ) 
    9094      ! 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_sco_FCT2_flux_cen-ahm1000_cfg

    r12489 r13632  
    2121   nn_it000    =       1   !  first time step 
    2222   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    23    !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
    2524   nn_stock    =    6120   !  frequency of creation of a restart file (modulo referenced to 1) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF     = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_sco_FCT2_flux_ubs_cfg

    r12489 r13632  
    2121   nn_it000    =       1   !  first time step 
    2222   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    23    !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
    2524   nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_sco_FCT4_flux_cen-ahm1000_cfg

    r12489 r13632  
    2121   nn_it000    =       1   !  first time step 
    2222   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    23    !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
    2524   nn_stock    =    6120   !  frequency of creation of a restart file (modulo referenced to 1) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF     = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_sco_FCT4_flux_ubs_cfg

    r12489 r13632  
    2121   nn_it000    =       1   !  first time step 
    2222   nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    23    !nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
    2524   nn_stock    =    1080   !  frequency of creation of a restart file (modulo referenced to 1) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF     = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_zps_FCT2_flux_ubs_cfg

    r12489 r13632  
    2020   cn_exp      =   "OVF_zps_FCT2_flux_ubs"  !  experience name 
    2121   nn_it000    =       1   !  first time step 
    22    !nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    2322   nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF     = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_zps_FCT4_flux_ubs_cfg

    r12489 r13632  
    105105!!                                                                    !! 
    106106!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    107 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    108 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     107!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     108!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    109109!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    110110!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    114114&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    115115!----------------------------------------------------------------------- 
    116    ln_OFF    = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     116   ln_drg_OFF = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    117117   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    118118   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    136136!----------------------------------------------------------------------- 
    137137   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    138    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     138   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    139139   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    140140   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
     
    289289!!                                                                    !! 
    290290!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    291 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    292291!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    293292!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/EXPREF/namelist_zps_FCT4_vect_een_cfg

    r12489 r13632  
    2020   cn_exp      =   "OVF_zps_FCT4_vect_een"  !  experience name 
    2121   nn_it000    =       1   !  first time step 
    22    !nn_itend    =    6120  ! here 17h of simulation  (=6120 time-step)  
    2322   nn_itend    =    5760   ! here 16h of simulation  (=5760 time-step) abort after 5802 for zps: pb of physics conditions 
    2423   nn_istate   =       0   !  output the initial state (1) or not (0) 
     
    7170&namdrg            !   top/bottom drag coefficient                      (default: NO selection) 
    7271!----------------------------------------------------------------------- 
    73    ln_OFF     = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
     72   ln_drg_OFF = .true.    !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    7473   ln_lin     = .false.    !      linear  drag: Cd = Cd0 Uc0                   &   namdrg_top) 
    7574   ln_non_lin = .false.    !  non-linear  drag: Cd = Cd0 |U| 
     
    8281!----------------------------------------------------------------------- 
    8382   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    84    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     83   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    8584   rn_a0       =  0.2         !  thermal expension coefficient (for simplified equation of state) 
    8685   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/OVERFLOW/MY_SRC/usrdef_zgr.F90

    r13295 r13632  
    9393         zhu(ji,:) = 0.5_wp * ( zht(ji,:) + zht(ji+1,:) ) 
    9494      END DO 
     95#if defined key_mpi3 
     96      CALL lbc_lnk_nc_multi( 'usrdef_zgr', zhu, 'U', 1. )     ! boundary condition: this mask the surrouding grid-points 
     97#else 
    9598      CALL lbc_lnk( 'usrdef_zgr', zhu, 'U', 1. )     ! boundary condition: this mask the surrouding grid-points 
     99#endif 
    96100      !                                ! ==>>>  set by hand non-zero value on first/last columns & rows  
    97101      DO ji = mi0(1), mi1(1)              ! first row of global domain only 
     
    112116      ! the ocean basin surrounded by land (1 grid-point) set through lbc_lnk call as jperio=0  
    113117      z2d(:,:) = 1._wp                    ! surface ocean is the 1st level 
     118#if defined key_mpi3 
     119      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     120#else 
    114121      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     122#endif 
    115123      k_top(:,:) = NINT( z2d(:,:) ) 
    116124      ! 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/namelist_coare3p6-noskin_cfg

    r13108 r13632  
    201201!!                                                                    !! 
    202202!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    203 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    204 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     203!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     204!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    205205!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    206206!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    250250!!                                                                    !! 
    251251!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    252 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    253252!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    254253!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/namelist_coare3p6_cfg

    r13108 r13632  
    201201!!                                                                    !! 
    202202!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    203 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    204 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     203!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     204!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    205205!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    206206!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    250250!!                                                                    !! 
    251251!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    252 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    253252!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    254253!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/namelist_ecmwf-noskin_cfg

    r13108 r13632  
    201201!!                                                                    !! 
    202202!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    203 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    204 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     203!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     204!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    205205!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    206206!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    250250!!                                                                    !! 
    251251!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    252 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    253252!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    254253!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/namelist_ecmwf_cfg

    r13108 r13632  
    201201!!                                                                    !! 
    202202!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    203 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    204 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     203!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     204!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    205205!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    206206!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    250250!!                                                                    !! 
    251251!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    252 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    253252!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    254253!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/namelist_ncar_cfg

    r13108 r13632  
    201201!!                                                                    !! 
    202202!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    203 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    204 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     203!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     204!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    205205!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    206206!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    250250!!                                                                    !! 
    251251!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    252 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    253252!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    254253!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/EXPREF/plot_station_asf.py

    r13264 r13632  
    1 #!/usr/bin/env python 
     1#!/usr/bin/env python3 
    22# -*- Mode: Python; coding: utf-8; indent-tabs-mode: nil; tab-width: 4 -*- 
    33 
    4 # Post-diagnostic of STATION_ASF /  L. Brodeau, 2019 
     4# Post-diagnostic of STATION_ASF /  L. Brodeau, 2020 
    55 
    66import sys 
    77from os import path as path 
    8 #from string import replace 
    98import math 
    109import numpy as nmp 
    11 #import scipy.signal as signal 
    1210from netCDF4 import Dataset 
    1311import matplotlib as mpl 
     
    1513import matplotlib.pyplot as plt 
    1614import matplotlib.dates as mdates 
    17 #from string import find 
    18 #import warnings 
    19 #warnings.filterwarnings("ignore") 
    20 #import time 
    21  
    22 #import barakuda_plot as bp 
    23 #import barakuda_tool as bt 
    24  
    25 reload(sys) 
    26 sys.setdefaultencoding('utf8') 
    2715 
    2816cy1     = '2018' ; # First year 
     
    6856narg = len(sys.argv) 
    6957if narg != 2: 
    70     print 'Usage: '+sys.argv[0]+' <DIR_OUT_SASF>'; sys.exit(0) 
     58    print('Usage: '+sys.argv[0]+' <DIR_OUT_SASF>'); sys.exit(0) 
    7159cdir_data = sys.argv[1] 
    7260 
     
    7866def chck4f(cf): 
    7967    cmesg = 'ERROR: File '+cf+' does not exist !!!' 
    80     if not path.exists(cf): print cmesg ; sys.exit(0) 
     68    if not path.exists(cf): print(cmesg); sys.exit(0) 
    8169 
    8270###cf_in = nmp.empty((), dtype="S10") 
     
    176164                rmlt = 10.**(int(romagn)) / 2. 
    177165                yrng = math.copysign( math.ceil(abs(rmax)/rmlt)*rmlt , rmax) 
    178                 #print 'yrng = ', yrng ;  #sys.exit(0) 
    179166 
    180167                fig = plt.figure(num = 10+jv, figsize=size_fig, facecolor='w', edgecolor='k') 
     
    225212    rmlt = 10.**(int(romagn)) / 2. 
    226213    yrng = math.copysign( math.ceil(abs(rmax)/rmlt)*rmlt , rmax) 
    227     print 'yrng = ', yrng ;  #sys.exit(0) 
    228  
    229  
    230  
    231  
     214 
     215     
    232216    for ja in range(nb_algos-1): 
    233217 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/STATION_ASF/MY_SRC/stpctl.F90

    r13136 r13632  
    4747      !! 
    4848      !! ** Method  : - Save the time step in numstp 
    49       !!              - Print it each 50 time steps 
    5049      !!              - Stop the run IF problem encountered by setting nstop > 0 
    5150      !!                Problems checked: wind stress module  max larger than 5 N/m^2 
     
    110109      !                                   !==            test of local extrema           ==! 
    111110      !                                   !==  done by all processes at every time step  ==! 
    112       llmsk(:,:) = tmask(:,:,1) == 1._wp 
     111      ! 
     112      llmsk(   1:Nis1,:) = .FALSE.                                              ! exclude halos from the checked region 
     113      llmsk(Nie1: jpi,:) = .FALSE. 
     114      llmsk(:,   1:Njs1) = .FALSE. 
     115      llmsk(:,Nje1: jpj) = .FALSE. 
     116      ! 
     117      llmsk(Nis0:Nie0,Njs0:Nje0) = tmask(Nis0:Nie0,Njs0:Nje0,1) == 1._wp   ! test only the inner domain 
    113118      IF( COUNT( llmsk(:,:) ) > 0 ) THEN   ! avoid huge values sent back for land processors... 
    114119         zmax(1) = MAXVAL(     taum(:,:)   , mask = llmsk )   ! max wind stress module 
     
    153158            IF( lwm .AND. kt /= nitend )   istatus = NF90_CLOSE(nrunid) 
    154159            ! get global loc on the min/max 
    155             CALL mpp_maxloc( 'stpctl',    taum(:,:)  , tmask(:,:,1), zzz, iloc(1:2,1) )   ! mpp_maxloc ok if mask = F  
    156             CALL mpp_maxloc( 'stpctl',ABS( qns(:,:) ), tmask(:,:,1), zzz, iloc(1:2,2) ) 
    157             CALL mpp_minloc( 'stpctl',ABS( emp(:,:) ), tmask(:,:,1), zzz, iloc(1:2,3) ) 
     160            CALL mpp_maxloc( 'stpctl',    taum(:,:)  , llmsk, zzz, iloc(1:2,1) )   ! mpp_maxloc ok if mask = F  
     161            CALL mpp_maxloc( 'stpctl',ABS( qns(:,:) ), llmsk, zzz, iloc(1:2,2) ) 
     162            CALL mpp_minloc( 'stpctl',ABS( emp(:,:) ), llmsk, zzz, iloc(1:2,3) ) 
    158163            ! find which subdomain has the max. 
    159164            iareamin(:) = jpnij+1   ;   iareamax(:) = 0   ;   iareasum(:) = 0 
     
    168173         ELSE                    ! find local min and max locations: 
    169174            ! if we are here, this means that the subdomain contains some oce points -> no need to test the mask used in maxloc 
    170             iloc(1:2,1) = MAXLOC(     taum(:,:)  , mask = llmsk ) + (/ nimpp - 1, njmpp - 1/) 
    171             iloc(1:2,2) = MAXLOC( ABS( qns(:,:) ), mask = llmsk ) + (/ nimpp - 1, njmpp - 1/) 
    172             iloc(1:2,3) = MINLOC( ABS( emp(:,:) ), mask = llmsk ) + (/ nimpp - 1, njmpp - 1/) 
     175            iloc(1:2,1) = MAXLOC(     taum(:,:)  , mask = llmsk ) 
     176            iloc(1:2,2) = MAXLOC( ABS( qns(:,:) ), mask = llmsk ) 
     177            iloc(1:2,3) = MINLOC( ABS( emp(:,:) ), mask = llmsk ) 
     178            DO ji = 1, 3   ! local domain indices ==> global domain indices, excluding halos 
     179               iloc(1:2,ji) = (/ mig0(iloc(1,ji)), mjg0(iloc(2,ji)) /) 
     180            END DO 
    173181            iareamin(:) = narea   ;   iareamax(:) = narea   ;   iareasum(:) = 1         ! this is local information 
    174182         ENDIF 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/EXPREF/1_context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/EXPREF/1_namelist_cfg

    r13216 r13632  
    105105!!                                                                    !! 
    106106!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    107 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    108 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     107!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     108!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    109109!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    110110!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    114114&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    115115!----------------------------------------------------------------------- 
    116    ln_OFF     = .true.    !  free-slip       : Cd = 0 
     116   ln_drg_OFF = .true.     !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    117117/ 
    118118!!====================================================================== 
     
    131131!----------------------------------------------------------------------- 
    132132   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    133       !                            !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     133      !                            !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    134134      rn_a0       =  0.28        !  thermal expension coefficient (for simplified equation of state) 
    135135      rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
     
    266266!!                                                                    !! 
    267267!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    268 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    269268!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    270269!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/EXPREF/namelist_cfg

    r12489 r13632  
    9999!!                                                                    !! 
    100100!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    101 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    102 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     101!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     102!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    103103!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    104104!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    108108&namdrg        !   top/bottom drag coefficient                          (default: NO selection) 
    109109!----------------------------------------------------------------------- 
    110    ln_OFF     = .true.    !  free-slip       : Cd = 0 
     110   ln_drg_OFF  = .true.   !  free-slip       : Cd = 0                  (F => fill namdrg_bot 
    111111/ 
    112112!!====================================================================== 
     
    125125!----------------------------------------------------------------------- 
    126126   ln_seos     = .true.         !  = Use simplified equation of state (S-EOS) 
    127    !                            !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     127   !                            !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    128128   rn_a0       =  0.28        !  thermal expension coefficient (for simplified equation of state) 
    129129   rn_b0       =  0.          !  saline  expension coefficient (for simplified equation of state) 
     
    259259!!                                                                    !! 
    260260!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    261 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    262261!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    263262!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/MY_SRC/domvvl.F90

    r13295 r13632  
    99   !!            3.6  !  2014-11  (P. Mathiot) add ice shelf capability 
    1010   !!            4.1  !  2019-08  (A. Coward, D. Storkey) rename dom_vvl_sf_swp -> dom_vvl_sf_update for new timestepping 
     11   !!            4.x  ! 2020-02  (G. Madec, S. Techene) introduce ssh to h0 ratio 
    1112   !!---------------------------------------------------------------------- 
    1213 
    13    !!---------------------------------------------------------------------- 
    14    !!   dom_vvl_init     : define initial vertical scale factors, depths and column thickness 
    15    !!   dom_vvl_sf_nxt   : Compute next vertical scale factors 
    16    !!   dom_vvl_sf_update   : Swap vertical scale factors and update the vertical grid 
    17    !!   dom_vvl_interpol : Interpolate vertical scale factors from one grid point to another 
    18    !!   dom_vvl_rst      : read/write restart file 
    19    !!   dom_vvl_ctl      : Check the vvl options 
    20    !!---------------------------------------------------------------------- 
    2114   USE oce             ! ocean dynamics and tracers 
    2215   USE phycst          ! physical constant 
     
    3629   PRIVATE 
    3730 
    38    PUBLIC  dom_vvl_init       ! called by domain.F90 
    39    PUBLIC  dom_vvl_zgr        ! called by isfcpl.F90 
    40    PUBLIC  dom_vvl_sf_nxt     ! called by step.F90 
    41    PUBLIC  dom_vvl_sf_update  ! called by step.F90 
    42    PUBLIC  dom_vvl_interpol   ! called by dynnxt.F90 
    43  
    4431   !                                                      !!* Namelist nam_vvl 
    4532   LOGICAL , PUBLIC :: ln_vvl_zstar           = .FALSE.    ! zstar  vertical coordinate 
     
    6350   REAL(wp)        , ALLOCATABLE, SAVE, DIMENSION(:,:)   :: frq_rst_hdv                 ! retoring period for low freq. divergence 
    6451 
     52#if defined key_qco 
     53   !!---------------------------------------------------------------------- 
     54   !!   'key_qco'      EMPTY MODULE      Quasi-Eulerian vertical coordonate 
     55   !!---------------------------------------------------------------------- 
     56#else 
     57   !!---------------------------------------------------------------------- 
     58   !!   Default key      Old management of time varying vertical coordinate 
     59   !!---------------------------------------------------------------------- 
     60    
     61   !!---------------------------------------------------------------------- 
     62   !!   dom_vvl_init     : define initial vertical scale factors, depths and column thickness 
     63   !!   dom_vvl_sf_nxt   : Compute next vertical scale factors 
     64   !!   dom_vvl_sf_update   : Swap vertical scale factors and update the vertical grid 
     65   !!   dom_vvl_interpol : Interpolate vertical scale factors from one grid point to another 
     66   !!   dom_vvl_rst      : read/write restart file 
     67   !!   dom_vvl_ctl      : Check the vvl options 
     68   !!---------------------------------------------------------------------- 
     69 
     70   PUBLIC  dom_vvl_init       ! called by domain.F90 
     71   PUBLIC  dom_vvl_zgr        ! called by isfcpl.F90 
     72   PUBLIC  dom_vvl_sf_nxt     ! called by step.F90 
     73   PUBLIC  dom_vvl_sf_update  ! called by step.F90 
     74   PUBLIC  dom_vvl_interpol   ! called by dynnxt.F90 
     75    
    6576   !! * Substitutions 
    6677#  include "do_loop_substitute.h90" 
     
    135146      ! 
    136147   END SUBROUTINE dom_vvl_init 
    137    ! 
     148 
     149 
    138150   SUBROUTINE dom_vvl_zgr(Kbb, Kmm, Kaa) 
    139151      !!---------------------------------------------------------------------- 
     
    261273            IF( cn_cfg == "orca" .OR. cn_cfg == "ORCA" ) THEN 
    262274               IF( nn_cfg == 3 ) THEN   ! ORCA2: Suppress ztilde in the Foxe Basin for ORCA2 
    263                   ii0 = 103   ;   ii1 = 111        
    264                   ij0 = 128   ;   ij1 = 135   ;    
     275                  ii0 = 103 + nn_hls - 1   ;   ii1 = 111 + nn_hls - 1       
     276                  ij0 = 128 + nn_hls       ;   ij1 = 135 + nn_hls 
    265277                  frq_rst_e3t( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) ) =  0.0_wp 
    266278                  frq_rst_hdv( mi0(ii0):mi1(ii1) , mj0(ij0):mj1(ij1) ) =  1.e0_wp / rn_Dt 
     
    322334      LOGICAL                ::   ll_do_bclinic         ! local logical 
    323335      REAL(wp), DIMENSION(jpi,jpj)     ::   zht, z_scale, zwu, zwv, zhdiv 
    324       REAL(wp), DIMENSION(jpi,jpj,jpk) ::   ze3t 
     336      REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   ze3t 
     337      LOGICAL , DIMENSION(:,:,:), ALLOCATABLE ::   llmsk 
    325338      !!---------------------------------------------------------------------- 
    326339      ! 
     
    426439         !                       ! d - thickness diffusion transport: boundary conditions 
    427440         !                             (stored for tracer advction and continuity equation) 
     441#if defined key_mpi3 
     442         CALL lbc_lnk_nc_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
     443#else 
    428444         CALL lbc_lnk_multi( 'domvvl', un_td , 'U' , -1._wp, vn_td , 'V' , -1._wp) 
     445#endif 
    429446 
    430447         ! 4 - Time stepping of baroclinic scale factors 
    431448         ! --------------------------------------------- 
     449#if defined key_mpi3 
     450         CALL lbc_lnk_nc_multi( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp ) 
     451#else 
    432452         CALL lbc_lnk( 'domvvl', tilde_e3t_a(:,:,:), 'T', 1._wp ) 
     453#endif 
    433454         tilde_e3t_a(:,:,:) = tilde_e3t_b(:,:,:) + rDt * tmask(:,:,:) * tilde_e3t_a(:,:,:) 
    434455 
    435456         ! Maximum deformation control 
    436457         ! ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    437          ze3t(:,:,jpk) = 0._wp 
    438          DO jk = 1, jpkm1 
    439             ze3t(:,:,jk) = tilde_e3t_a(:,:,jk) / e3t_0(:,:,jk) * tmask(:,:,jk) * tmask_i(:,:) 
    440          END DO 
    441          z_tmax = MAXVAL( ze3t(:,:,:) ) 
    442          CALL mpp_max( 'domvvl', z_tmax )                 ! max over the global domain 
    443          z_tmin = MINVAL( ze3t(:,:,:) ) 
    444          CALL mpp_min( 'domvvl', z_tmin )                 ! min over the global domain 
     458         ALLOCATE( ze3t(jpi,jpj,jpk), llmsk(jpi,jpj,jpk) ) 
     459         DO_3D( 0, 0, 0, 0, 1, jpkm1 ) 
     460            ze3t(ji,jj,jk) = tilde_e3t_a(ji,jj,jk) / e3t_0(ji,jj,jk) * tmask(ji,jj,jk) * tmask_i(ji,jj) 
     461         END_3D 
     462         ! 
     463         llmsk(   1:Nis1,:,:) = .FALSE.   ! exclude halos from the checked region 
     464         llmsk(Nie1: jpi,:,:) = .FALSE. 
     465         llmsk(:,   1:Njs1,:) = .FALSE. 
     466         llmsk(:,Nje1: jpj,:) = .FALSE. 
     467         ! 
     468         llmsk(Nis0:Nie0,Njs0:Nje0,:) = tmask(Nis0:Nie0,Njs0:Nje0,:) == 1._wp                  ! define only the inner domain 
     469         z_tmax = MAXVAL( ze3t(:,:,:), mask = llmsk )   ;   CALL mpp_max( 'domvvl', z_tmax )   ! max over the global domain 
     470         z_tmin = MINVAL( ze3t(:,:,:), mask = llmsk )   ;   CALL mpp_min( 'domvvl', z_tmin )   ! min over the global domain 
    445471         ! - ML - test: for the moment, stop simulation for too large e3_t variations 
    446472         IF( ( z_tmax >  rn_zdef_max ) .OR. ( z_tmin < - rn_zdef_max ) ) THEN 
    447             IF( lk_mpp ) THEN 
    448                CALL mpp_maxloc( 'domvvl', ze3t, tmask, z_tmax, ijk_max ) 
    449                CALL mpp_minloc( 'domvvl', ze3t, tmask, z_tmin, ijk_min ) 
    450             ELSE 
    451                ijk_max = MAXLOC( ze3t(:,:,:) ) 
    452                ijk_max(1) = mig0_oldcmp(ijk_max(1)) 
    453                ijk_max(2) = mjg0_oldcmp(ijk_max(2)) 
    454                ijk_min = MINLOC( ze3t(:,:,:) ) 
    455                ijk_min(1) = mig0_oldcmp(ijk_min(1)) 
    456                ijk_min(2) = mjg0_oldcmp(ijk_min(2)) 
    457             ENDIF 
     473            CALL mpp_maxloc( 'domvvl', ze3t, llmsk, z_tmax, ijk_max ) 
     474            CALL mpp_minloc( 'domvvl', ze3t, llmsk, z_tmin, ijk_min ) 
    458475            IF (lwp) THEN 
    459476               WRITE(numout, *) 'MAX( tilde_e3t_a(:,:,:) / e3t_0(:,:,:) ) =', z_tmax 
     
    464481            ENDIF 
    465482         ENDIF 
     483         DEALLOCATE( ze3t, llmsk ) 
    466484         ! - ML - end test 
    467485         ! - ML - Imposing these limits will cause a baroclinicity error which is corrected for below 
     
    10301048   END SUBROUTINE dom_vvl_ctl 
    10311049 
     1050#endif 
     1051 
    10321052   !!====================================================================== 
    10331053END MODULE domvvl 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/VORTEX/MY_SRC/usrdef_istate.F90

    r13295 r13632  
    130130      END_2D 
    131131      ! 
     132#if defined key_mpi3 
     133      CALL lbc_lnk_nc_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. ) 
     134#else 
    132135      CALL lbc_lnk_multi( 'usrdef_istate', pu, 'U', -1., pv, 'V', -1. ) 
     136#endif 
    133137      !    
    134138   END SUBROUTINE usr_def_istate 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/WAD/EXPREF/context_nemo.xml

    r12276 r13632  
    1111       <variable id="ref_month" type="int"> 01 </variable> 
    1212       <variable id="ref_day"   type="int"> 01 </variable> 
    13        <variable id="rau0"      type="float" > 1026.0 </variable> 
     13       <variable id="rho0"      type="float" > 1026.0 </variable> 
    1414       <variable id="cpocean"   type="float" > 3991.86795711963 </variable> 
    1515       <variable id="convSpsu"  type="float" > 0.99530670233846  </variable> 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/WAD/EXPREF/namelist_cfg

    r12489 r13632  
    200200!!                                                                    !! 
    201201!!   namdrg        top/bottom drag coefficient                          (default: NO selection) 
    202 !!   namdrg_top    top    friction                                      (ln_OFF=F & ln_isfcav=T) 
    203 !!   namdrg_bot    bottom friction                                      (ln_OFF=F) 
     202!!   namdrg_top    top    friction                                      (ln_drg_OFF=F & ln_isfcav=T) 
     203!!   namdrg_bot    bottom friction                                      (ln_drg_OFF=F) 
    204204!!   nambbc        bottom temperature boundary condition                (default: OFF) 
    205205!!   nambbl        bottom boundary layer scheme                         (default: OFF) 
     
    253253                                 ! 
    254254   !                     ! S-EOS coefficients (ln_seos=T): 
    255    !                             !  rd(T,S,Z)*rau0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
     255   !                             !  rd(T,S,Z)*rho0 = -a0*(1+.5*lambda*dT+mu*Z+nu*dS)*dT+b0*dS 
    256256   rn_a0       =  1.6550e-1      !  thermal expension coefficient (nn_eos= 1) 
    257257   rn_b0       =  7.6554e-1      !  saline  expension coefficient (nn_eos= 1) 
     
    263263!!org GYRE   rn_alpha    =   2.0e-4  !  thermal expension coefficient (nn_eos= 1 or 2) 
    264264!!org GYRE   rn_beta     =   7.7e-4  !  saline  expension coefficient (nn_eos= 2) 
    265 !!org  caution  now a0 = alpha / rau0   with rau0 = 1026 
     265!!org  caution  now a0 = alpha / rho0   with rho0 = 1026 
    266266/ 
    267267!----------------------------------------------------------------------- 
     
    417417!!                                                                    !! 
    418418!!   namtrd       dynamics and/or tracer trends                         (default: OFF) 
    419 !!   namptr       Poleward Transport Diagnostics                        (default: OFF) 
    420419!!   namhsb       Heat and salt budgets                                 (default: OFF) 
    421420!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/tests/WAD/MY_SRC/usrdef_zgr.F90

    r13295 r13632  
    233233         zhu(ji,:) = 0.5_wp * ( zht(ji,:) + zht(ji+1,:) ) 
    234234      END DO 
     235#if defined key_mpi3 
     236      CALL lbc_lnk_nc_multi( 'usrdef_zgr', zhu, 'U', 1. )     ! boundary condition: this mask the surrounding grid-points 
     237#else 
    235238      CALL lbc_lnk( 'usrdef_zgr', zhu, 'U', 1. )     ! boundary condition: this mask the surrounding grid-points 
     239#endif 
    236240      !                                ! ==>>>  set by hand non-zero value on first/last columns & rows  
    237241      DO ji = mi0(1), mi1(1)              ! first row of global domain only 
     
    246250         zhv(ji,jj) = 0.5_wp * ( zht(ji,jj) + zht(ji,jj+1) ) 
    247251      END_2D 
     252#if defined key_mpi3 
     253      CALL lbc_lnk_nc_multi( 'usrdef_zgr', zhv, 'V', 1. )     ! boundary condition: this mask the surrounding grid-points 
     254#else 
    248255      CALL lbc_lnk( 'usrdef_zgr', zhv, 'V', 1. )     ! boundary condition: this mask the surrounding grid-points 
     256#endif 
    249257      DO jj = mj0(1), mj1(1)   ! first  row of global domain only 
    250258         zhv(:,jj) = zht(:,jj) 
     
    271279 
    272280 
     281#if defined key_mpi3 
     282      CALL lbc_lnk_nc_multi( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     283#else 
    273284      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )        ! closed basin since jperio = 0 (see userdef_nam.F90) 
     285#endif 
    274286      k_top(:,:) = NINT( z2d(:,:) ) 
    275287      ! 
     
    306318            END DO 
    307319         END_2D      
     320#if defined key_mpi3 
     321         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pdept, 'T', 1. ) 
     322         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pdepw, 'T', 1. ) 
     323         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3t , 'T', 1. ) 
     324         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3w , 'T', 1. ) 
     325         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3u , 'U', 1. ) 
     326         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3uw, 'U', 1. ) 
     327         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3f , 'F', 1. ) 
     328         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3v , 'V', 1. ) 
     329         CALL lbc_lnk_nc_multi( 'usrdef_zgr', pe3vw, 'V', 1. ) 
     330#else 
    308331         CALL lbc_lnk( 'usrdef_zgr', pdept, 'T', 1. ) 
    309332         CALL lbc_lnk( 'usrdef_zgr', pdepw, 'T', 1. ) 
     
    315338         CALL lbc_lnk( 'usrdef_zgr', pe3v , 'V', 1. ) 
    316339         CALL lbc_lnk( 'usrdef_zgr', pe3vw, 'V', 1. ) 
     340#endif 
    317341         WHERE( pe3t (:,:,:) == 0._wp )   pe3t (:,:,:) = 1._wp 
    318342         WHERE( pe3u (:,:,:) == 0._wp )   pe3u (:,:,:) = 1._wp 
Note: See TracChangeset for help on using the changeset viewer.