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 9366 for branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90 – NEMO

Ignore:
Timestamp:
2018-02-28T16:29:13+01:00 (6 years ago)
Author:
andmirek
Message:

#2050 first version. Compiled OK in moci test suite

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/test_moci_test_suite_namelist_read/NEMOGCM/NEMO/OPA_SRC/STO/stopar.F90

    r6487 r9366  
    3030   PUBLIC   sto_par         ! called by step.F90 
    3131   PUBLIC   sto_rst_write   ! called by step.F90 
     32   PRIVATE  par_namelist 
    3233 
    3334   LOGICAL           :: ln_rststo = .FALSE.  ! restart stochastic parameters from restart file 
     
    261262 
    262263      ! Read namsto namelist : stochastic parameterization 
    263       REWIND( numnam_ref )              ! Namelist namdyn_adv in reference namelist : Momentum advection scheme 
    264       READ  ( numnam_ref, namsto, IOSTAT = ios, ERR = 901) 
    265 901   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in reference namelist', lwp ) 
    266  
    267       REWIND( numnam_cfg )              ! Namelist namdyn_adv in configuration namelist : Momentum advection scheme 
    268       READ  ( numnam_cfg, namsto, IOSTAT = ios, ERR = 902 ) 
    269 902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in configuration namelist', lwp ) 
     264      IF(lwm) THEN 
     265         REWIND( numnam_ref )              ! Namelist namdyn_adv in reference namelist : Momentum advection scheme 
     266         READ  ( numnam_ref, namsto, IOSTAT = ios, ERR = 901) 
     267901      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in reference namelist', lwm ) 
     268         REWIND( numnam_cfg )              ! Namelist namdyn_adv in configuration namelist : Momentum advection scheme 
     269         READ  ( numnam_cfg, namsto, IOSTAT = ios, ERR = 902 ) 
     270902      IF( ios /= 0 ) CALL ctl_nam ( ios , 'namsto in configuration namelist', lwm ) 
     271      ENDIF 
    270272      IF(lwm) WRITE ( numond, namsto ) 
    271273 
    272274      !IF(ln_ens_rst_in) cn_storst_in = cn_mem//cn_storst_in 
     275 
     276      call par_namelist() 
    273277 
    274278      ! Parameter print 
     
    899903   END FUNCTION sto_par_flt_fac 
    900904 
     905   SUBROUTINE par_namelist() 
     906     !!--------------------------------------------------------------------- 
     907     !!                   ***  ROUTINE par_namelist  *** 
     908     !!                      
     909     !! ** Purpose :   Broadcast namelist variables read by procesor lwm 
     910     !! 
     911     !! ** Method  :   use lib_mpp 
     912     !!---------------------------------------------------------------------- 
     913#if defined key_mpp_mpi 
     914      CALL mpp_bcast(ln_sto_ldf) 
     915      CALL mpp_bcast(rn_ldf_std) 
     916      CALL mpp_bcast(rn_ldf_tcor) 
     917      CALL mpp_bcast(ln_sto_hpg) 
     918      CALL mpp_bcast(rn_hpg_std) 
     919      CALL mpp_bcast(rn_hpg_tcor) 
     920      CALL mpp_bcast(ln_sto_pstar) 
     921      CALL mpp_bcast(rn_pstar_std) 
     922      CALL mpp_bcast(rn_pstar_tcor) 
     923      CALL mpp_bcast(nn_pstar_flt) 
     924      CALL mpp_bcast(nn_pstar_ord) 
     925      CALL mpp_bcast(ln_sto_trd) 
     926      CALL mpp_bcast(rn_trd_std) 
     927      CALL mpp_bcast(rn_trd_tcor) 
     928      CALL mpp_bcast(ln_sto_eos) 
     929      CALL mpp_bcast(nn_sto_eos) 
     930      CALL mpp_bcast(rn_eos_stdxy) 
     931      CALL mpp_bcast(rn_eos_stdz) 
     932      CALL mpp_bcast(rn_eos_tcor) 
     933      CALL mpp_bcast(nn_eos_ord) 
     934      CALL mpp_bcast(nn_eos_flt) 
     935      CALL mpp_bcast(rn_eos_lim) 
     936      CALL mpp_bcast(ln_sto_trc) 
     937      CALL mpp_bcast(nn_sto_trc) 
     938      CALL mpp_bcast(rn_trc_stdxy) 
     939      CALL mpp_bcast(rn_trc_stdz) 
     940      CALL mpp_bcast(rn_trc_tcor) 
     941      CALL mpp_bcast(nn_trc_ord) 
     942      CALL mpp_bcast(nn_trc_flt) 
     943      CALL mpp_bcast(rn_trc_lim) 
     944      CALL mpp_bcast(ln_rststo) 
     945      CALL mpp_bcast(ln_rstseed) 
     946      CALL mpp_bcast(cn_storst_in, 32) 
     947      CALL mpp_bcast(cn_storst_out, 32) 
     948#endif 
     949   END SUBROUTINE par_namelist 
    901950 
    902951END MODULE stopar 
Note: See TracChangeset for help on using the changeset viewer.