- Timestamp:
- 2020-04-08T21:37:59+02:00 (4 years ago)
- Location:
- NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3
- Files:
-
- 14 edited
- 1 copied
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3
- Property svn:externals
-
old new 3 3 ^/utils/build/mk@HEAD mk 4 4 ^/utils/tools@HEAD tools 5 ^/vendors/AGRIF/dev _r11615_ENHANCE-04_namelists_as_internalfiles_agrif@HEAD ext/AGRIF5 ^/vendors/AGRIF/dev@HEAD ext/AGRIF 6 6 ^/vendors/FCM@HEAD ext/FCM 7 7 ^/vendors/IOIPSL@HEAD ext/IOIPSL 8 9 # SETTE 10 ^/utils/CI/sette@HEAD sette
-
- Property svn:externals
-
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/launch_sasf.sh
r11996 r12724 2 2 3 3 # NEMO directory where to fetch compiled STATION_ASF nemo.exe + setup: 4 NEMO_DIR="${HOME}/NEMO/NEMOvdev_r11085_ASINTER-05_Brodeau_Advanced_Bulk" 4 NEMO_DIR=`pwd | sed -e "s|/tests/STATION_ASF/EXPREF||g"` 5 6 echo "Using NEMO_DIR=${NEMO_DIR}" 7 8 # what directory inside "tests" actually contains the compiled test-case? 9 TC_DIR="STATION_ASF2" 10 11 # => so the executable to use is: 12 NEMO_EXE="${NEMO_DIR}/tests/${TC_DIR}/BLD/bin/nemo.exe" 5 13 6 14 # Directory where to run the simulation: … … 24 32 mkdir -p ${WORK_DIR} 25 33 26 NEMO_EXE="${NEMO_DIR}/tests/STATION_ASF/BLD/bin/nemo.exe" 34 27 35 if [ ! -f ${NEMO_EXE} ]; then echo " Mhhh, no compiled nemo.exe found into ${NEMO_DIR}/tests/STATION_ASF/BLD/bin !"; exit; fi 28 36 … … 40 48 rsync -avP ${FORC_DIR}/Station_PAPA_50N-145W*.nc ${WORK_DIR}/ 41 49 42 for CASE in "ECMWF -noskin" "COARE3p6-noskin" "ECMWF" "COARE3p6" "NCAR"; do50 for CASE in "ECMWF" "COARE3p6" "NCAR" "ECMWF-noskin" "COARE3p6-noskin"; do 43 51 44 52 echo ; echo … … 56 64 echo 57 65 echo "Launching NEMO !" 58 ./nemo.exe 1> 66 ./nemo.exe 1>out_nemo.out 2>err_nemo.err 59 67 echo "Done!" 60 68 echo -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/namelist_coare3p6-noskin_cfg
r12249 r12724 33 33 nn_time0 = 0 ! initial time of day in hhmm 34 34 nn_leapy = 0 ! Leap year calendar (1) or not (0) 35 ln_rstart = 36 nn_euler = 1 ! = 0 : start with forward time step if ln_rstart=T35 ln_rstart = .false. ! start from rest (F) or from a restart file (T) 36 ln_1st_euler = .false. ! =T force a start with forward time step (ln_rstart=T) 37 37 nn_rstctl = 2 ! restart control ==> activated only if ln_rstart=T 38 38 ! ! = 0 nn_date0 read in namelist ; nn_it000 : read in namelist … … 57 57 &namdom ! time and space domain / STATION_ASF 58 58 !----------------------------------------------------------------------- 59 rn_ rdt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing59 rn_Dt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing 60 60 ln_meshmask = .false. 61 61 ln_linssh = .true. ! =T linear free surface ==>> model level are fixed in time -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/namelist_coare3p6_cfg
r12249 r12724 33 33 nn_time0 = 0 ! initial time of day in hhmm 34 34 nn_leapy = 0 ! Leap year calendar (1) or not (0) 35 ln_rstart = 36 nn_euler = 1 ! = 0 : start with forward time step if ln_rstart=T35 ln_rstart = .false. ! start from rest (F) or from a restart file (T) 36 ln_1st_euler = .false. ! =T force a start with forward time step (ln_rstart=T) 37 37 nn_rstctl = 2 ! restart control ==> activated only if ln_rstart=T 38 38 ! ! = 0 nn_date0 read in namelist ; nn_it000 : read in namelist … … 57 57 &namdom ! time and space domain / STATION_ASF 58 58 !----------------------------------------------------------------------- 59 rn_ rdt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing59 rn_Dt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing 60 60 ln_meshmask = .false. 61 61 ln_linssh = .true. ! =T linear free surface ==>> model level are fixed in time -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/namelist_ecmwf-noskin_cfg
r12249 r12724 33 33 nn_time0 = 0 ! initial time of day in hhmm 34 34 nn_leapy = 0 ! Leap year calendar (1) or not (0) 35 ln_rstart = 36 nn_euler = 1 ! = 0 : start with forward time step if ln_rstart=T35 ln_rstart = .false. ! start from rest (F) or from a restart file (T) 36 ln_1st_euler = .false. ! =T force a start with forward time step (ln_rstart=T) 37 37 nn_rstctl = 2 ! restart control ==> activated only if ln_rstart=T 38 38 ! ! = 0 nn_date0 read in namelist ; nn_it000 : read in namelist … … 57 57 &namdom ! time and space domain / STATION_ASF 58 58 !----------------------------------------------------------------------- 59 rn_ rdt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing59 rn_Dt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing 60 60 ln_meshmask = .false. 61 61 ln_linssh = .true. ! =T linear free surface ==>> model level are fixed in time -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/namelist_ecmwf_cfg
r12249 r12724 33 33 nn_time0 = 0 ! initial time of day in hhmm 34 34 nn_leapy = 0 ! Leap year calendar (1) or not (0) 35 ln_rstart = 36 nn_euler = 1 ! = 0 : start with forward time step if ln_rstart=T35 ln_rstart = .false. ! start from rest (F) or from a restart file (T) 36 ln_1st_euler = .false. ! =T force a start with forward time step (ln_rstart=T) 37 37 nn_rstctl = 2 ! restart control ==> activated only if ln_rstart=T 38 38 ! ! = 0 nn_date0 read in namelist ; nn_it000 : read in namelist … … 57 57 &namdom ! time and space domain / STATION_ASF 58 58 !----------------------------------------------------------------------- 59 rn_ rdt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing59 rn_Dt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing 60 60 ln_meshmask = .false. 61 61 ln_linssh = .true. ! =T linear free surface ==>> model level are fixed in time -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/namelist_ncar_cfg
r12249 r12724 33 33 nn_time0 = 0 ! initial time of day in hhmm 34 34 nn_leapy = 0 ! Leap year calendar (1) or not (0) 35 ln_rstart = 36 nn_euler = 1 ! = 0 : start with forward time step if ln_rstart=T35 ln_rstart = .false. ! start from rest (F) or from a restart file (T) 36 ln_1st_euler = .false. ! =T force a start with forward time step (ln_rstart=T) 37 37 nn_rstctl = 2 ! restart control ==> activated only if ln_rstart=T 38 38 ! ! = 0 nn_date0 read in namelist ; nn_it000 : read in namelist … … 57 57 &namdom ! time and space domain / STATION_ASF 58 58 !----------------------------------------------------------------------- 59 rn_ rdt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing59 rn_Dt = 3600. ! time step for the dynamics and tracer => frequency of atmospheric forcing 60 60 ln_meshmask = .false. 61 61 ln_linssh = .true. ! =T linear free surface ==>> model level are fixed in time -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/EXPREF/plot_station_asf.py
r12031 r12724 53 53 L_VARL = [ r'$Q_{lat}$', r'$Q_{sens}$' , r'$Q_{net}$' , r'$Q_{lw}$' , r'$|\tau|$' , r'$\Delta T_{skin}$' ] ; # name of variable in latex mode 54 54 L_VUNT = [ r'$W/m^2$' , r'$W/m^2$' , r'$W/m^2$' , r'$W/m^2$' , r'$N/m^2$' , 'K' ] 55 L_VMAX = [ 75. , 75. , 800. , 25. , 1.2 , -0.7 ]56 L_VMIN = [ -250. , -125. , -400. , -150. , 0. , 55 L_VMAX = [ 75. , 75. , 800. , 25. , 1.2 , 0.7 ] 56 L_VMIN = [ -250. , -125. , -400. , -150. , 0. , -0.7 ] 57 57 L_ANOM = [ True , True , True , True , True , False ] 58 58 -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/diawri.F90
r12353 r12724 35 35 USE iom ! 36 36 USE ioipsl ! 37 37 38 #if defined key_si3 38 39 USE ice … … 56 57 57 58 !!---------------------------------------------------------------------- 58 !! NEMO/ SAS4.0 , NEMO Consortium (2018)59 !! $Id: diawri.F90 1 0425 2018-12-19 21:54:16Z smasson $59 !! NEMO/OCE 4.0 , NEMO Consortium (2018) 60 !! $Id: diawri.F90 12493 2020-03-02 07:56:31Z smasson $ 60 61 !! Software governed by the CeCILL license (see ./LICENSE) 61 62 !!---------------------------------------------------------------------- … … 114 115 INTEGER, DIMENSION(2) :: ierr 115 116 !!---------------------------------------------------------------------- 116 ierr = 0 117 ALLOCATE( ndex_hT(jpi*jpj) , ndex_T(jpi*jpj*jpk) , & 118 & ndex_hU(jpi*jpj) , ndex_U(jpi*jpj*jpk) , & 119 & ndex_hV(jpi*jpj) , ndex_V(jpi*jpj*jpk) , STAT=ierr(1) ) 120 ! 121 dia_wri_alloc = MAXVAL(ierr) 122 CALL mpp_sum( 'diawri', dia_wri_alloc ) 117 IF( nn_write == -1 ) THEN 118 dia_wri_alloc = 0 119 ELSE 120 ierr = 0 121 ALLOCATE( ndex_hT(jpi*jpj) , ndex_T(jpi*jpj*jpk) , & 122 & ndex_hU(jpi*jpj) , ndex_U(jpi*jpj*jpk) , & 123 & ndex_hV(jpi*jpj) , ndex_V(jpi*jpj*jpk) , STAT=ierr(1) ) 124 ! 125 dia_wri_alloc = MAXVAL(ierr) 126 CALL mpp_sum( 'diawri', dia_wri_alloc ) 127 ! 128 ENDIF 123 129 ! 124 130 END FUNCTION dia_wri_alloc … … 168 174 clop = "x" ! no use of the mask value (require less cpu time and otherwise the model crashes) 169 175 #if defined key_diainstant 170 zsto = nn_write * r dt176 zsto = nn_write * rn_Dt 171 177 clop = "inst("//TRIM(clop)//")" 172 178 #else 173 zsto=r dt179 zsto=rn_Dt 174 180 clop = "ave("//TRIM(clop)//")" 175 181 #endif 176 zout = nn_write * r dt177 zmax = ( nitend - nit000 + 1 ) * r dt182 zout = nn_write * rn_Dt 183 zmax = ( nitend - nit000 + 1 ) * rn_Dt 178 184 179 185 ! Define indices of the horizontal output zoom and vertical limit storage … … 195 201 196 202 ! Compute julian date from starting date of the run 197 CALL ymds2ju( nyear, nmonth, nday, r dt, zjulian )203 CALL ymds2ju( nyear, nmonth, nday, rn_Dt, zjulian ) 198 204 zjulian = zjulian - adatrj ! set calendar origin to the beginning of the experiment 199 205 IF(lwp)WRITE(numout,*) … … 217 223 CALL histbeg( clhstnam, jpi, glamt, jpj, gphit, & ! Horizontal grid: glamt and gphit 218 224 & iimi, iima-iimi+1, ijmi, ijma-ijmi+1, & 219 & nit000-1, zjulian, r dt, nh_T, nid_T, domain_id=nidom, snc4chunks=snc4set )225 & nit000-1, zjulian, rn_Dt, nh_T, nid_T, domain_id=nidom, snc4chunks=snc4set ) 220 226 CALL histvert( nid_T, "deptht", "Vertical T levels", & ! Vertical grid: gdept 221 227 & "m", ipk, gdept_1d, nz_T, "down" ) … … 229 235 CALL histbeg( clhstnam, jpi, glamu, jpj, gphiu, & ! Horizontal grid: glamu and gphiu 230 236 & iimi, iima-iimi+1, ijmi, ijma-ijmi+1, & 231 & nit000-1, zjulian, r dt, nh_U, nid_U, domain_id=nidom, snc4chunks=snc4set )237 & nit000-1, zjulian, rn_Dt, nh_U, nid_U, domain_id=nidom, snc4chunks=snc4set ) 232 238 CALL histvert( nid_U, "depthu", "Vertical U levels", & ! Vertical grid: gdept 233 239 & "m", ipk, gdept_1d, nz_U, "down" ) … … 241 247 CALL histbeg( clhstnam, jpi, glamv, jpj, gphiv, & ! Horizontal grid: glamv and gphiv 242 248 & iimi, iima-iimi+1, ijmi, ijma-ijmi+1, & 243 & nit000-1, zjulian, r dt, nh_V, nid_V, domain_id=nidom, snc4chunks=snc4set )249 & nit000-1, zjulian, rn_Dt, nh_V, nid_V, domain_id=nidom, snc4chunks=snc4set ) 244 250 CALL histvert( nid_V, "depthv", "Vertical V levels", & ! Vertical grid : gdept 245 251 & "m", ipk, gdept_1d, nz_V, "down" ) … … 374 380 CALL iom_rstput( 0, 0, inum, 'vozocrtx', uu(:,:,:,Kmm) ) ! now i-velocity 375 381 CALL iom_rstput( 0, 0, inum, 'vomecrty', vv(:,:,:,Kmm) ) ! now j-velocity 376 382 CALL iom_rstput( 0, 0, inum, 'vovecrtz', ww ) ! now k-velocity 377 383 CALL iom_rstput( 0, 0, inum, 'sowaflup', emp - rnf ) ! freshwater budget 378 384 CALL iom_rstput( 0, 0, inum, 'sohefldo', qsr + qns ) ! total heat flux -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/nemogcm.F90
r12254 r12724 2 2 !!====================================================================== 3 3 !! *** MODULE nemogcm *** 4 !! StandAlone Surface module : surface fluxes4 !! STATION_ASF (SAS meets C1D) 5 5 !!====================================================================== 6 6 !! History : 3.6 ! 2011-11 (S. Alderson, G. Madec) original code … … 19 19 !!---------------------------------------------------------------------- 20 20 USE step_oce ! module used in the ocean time stepping module (step.F90) 21 USE sbc_oce ! surface boundary condition: ocean #LB: rm?22 21 USE phycst ! physical constant (par_cst routine) 23 22 USE domain ! domain initialization (dom_init & dom_cfg routines) 24 23 USE closea ! treatment of closed seas (for ln_closea) 25 24 USE usrdef_nam ! user defined configuration 25 USE istate ! initial state setting (istate_init routine) 26 26 USE step, ONLY : Nbb, Nnn, Naa, Nrhs ! time level indices 27 27 USE daymod ! calendar 28 28 USE restart ! open restart file 29 !LB:USE step ! NEMO time-stepping (stp routine)30 29 USE c1d ! 1D configuration 31 30 USE step_c1d ! Time stepping loop for the 1D configuration 32 USE sbcssm !33 31 ! 32 USE in_out_manager ! I/O manager 34 33 USE lib_mpp ! distributed memory computing 35 34 USE mppini ! shared/distributed memory setting (mpp_init routine) … … 49 48 !!---------------------------------------------------------------------- 50 49 !! NEMO/OCE 4.0 , NEMO Consortium (2018) 51 !! $Id: nemogcm.F90 1 1536 2019-09-11 13:54:18Z smasson$50 !! $Id: nemogcm.F90 12489 2020-02-28 15:55:11Z davestorkey $ 52 51 !! Software governed by the CeCILL license (see ./LICENSE) 53 52 !!---------------------------------------------------------------------- … … 84 83 ! !== time stepping ==! 85 84 ! !-----------------------! 85 ! 86 ! !== set the model time-step ==! 87 ! 86 88 istp = nit000 87 89 ! … … 106 108 ! 107 109 #if defined key_iomput 108 CALL xios_finalize ! end mpp communications with xios110 CALL xios_finalize ! end mpp communications with xios 109 111 #else 110 IF( lk_mpp ) THEN ; CALL mppstop ! end mpp communications 111 ENDIF 112 IF( lk_mpp ) CALL mppstop ! end mpp communications 112 113 #endif 113 114 ! … … 161 162 IF( lwm ) CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 162 163 ! open reference and configuration namelist files 163 CALL load_nml( numnam_ref, 'namelist_ref', -1, lwm )164 CALL load_nml( numnam_cfg, 'namelist_cfg', -1, lwm )164 CALL load_nml( numnam_ref, 'namelist_ref', -1, lwm ) 165 CALL load_nml( numnam_cfg, 'namelist_cfg', -1, lwm ) 165 166 IF( lwm ) CALL ctl_opn( numond, 'output.namelist.dyn', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 166 167 ! open /dev/null file to be able to supress output write easily 167 CALL ctl_opn( numnul, '/dev/null', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 168 IF( Agrif_Root() ) THEN 169 CALL ctl_opn( numnul, '/dev/null', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 170 #ifdef key_agrif 171 ELSE 172 numnul = Agrif_Parent(numnul) 173 #endif 174 ENDIF 168 175 ! 169 176 ! !--------------------! … … 235 242 903 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in reference namelist' ) 236 243 READ ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 237 904 IF( ios > 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist' ) 244 904 IF( ios > 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist' ) 238 245 ! 239 246 IF( ln_read_cfg ) THEN ! Read sizes in domain configuration file … … 266 273 IF( ln_timing ) CALL timing_start( 'nemo_init') 267 274 ! 268 CALL phy_cst ! Physical constants269 CALL eos_init ! Equation of state275 CALL phy_cst ! Physical constants 276 CALL eos_init ! Equation of state 270 277 IF( lk_c1d ) CALL c1d_init ! 1D column configuration 271 CALL dom_init( Nbb, Nnn, Naa, "OPA") ! Domain278 CALL dom_init( Nbb, Nnn, Naa, "OPA") ! Domain 272 279 IF( sn_cfctl%l_prtctl ) & 273 280 & CALL prt_ctl_init ! Print control 274 275 IF( ln_rstart ) THEN ! Restart from a file 276 ! ! ------------------- 277 CALL rst_read( Nbb, Nnn ) ! Read the restart file 278 CALL day_init ! model calendar (using both namelist and restart infos) 279 ! 280 ELSE ! Start from rest 281 ! ! --------------- 282 numror = 0 ! define numror = 0 -> no restart file to read 283 neuler = 0 ! Set time-step indicator at nit000 (euler forward) 284 CALL day_init ! model calendar (using both namelist and restart infos) 285 ENDIF 286 ! 287 288 ! ! external forcing 289 CALL sbc_init( Nbb, Nnn, Naa ) ! surface boundary conditions (including sea-ice) 281 ! 282 283 CALL istate_init( Nbb, Nnn, Naa ) ! ocean initial state (Dynamics and tracers) 284 285 ! ! external forcing 286 CALL sbc_init( Nbb, Nnn, Naa ) ! surface boundary conditions (including sea-ice) 290 287 291 288 ! … … 321 318 WRITE(numout,*) ' sn_cfctl%l_prttrc = ', sn_cfctl%l_prttrc 322 319 WRITE(numout,*) ' sn_cfctl%l_oasout = ', sn_cfctl%l_oasout 323 WRITE(numout,*) ' sn_cfctl%procmin = ', sn_cfctl%procmin 324 WRITE(numout,*) ' sn_cfctl%procmax = ', sn_cfctl%procmax 325 WRITE(numout,*) ' sn_cfctl%procincr = ', sn_cfctl%procincr 326 WRITE(numout,*) ' sn_cfctl%ptimincr = ', sn_cfctl%ptimincr 320 WRITE(numout,*) ' sn_cfctl%procmin = ', sn_cfctl%procmin 321 WRITE(numout,*) ' sn_cfctl%procmax = ', sn_cfctl%procmax 322 WRITE(numout,*) ' sn_cfctl%procincr = ', sn_cfctl%procincr 323 WRITE(numout,*) ' sn_cfctl%ptimincr = ', sn_cfctl%ptimincr 327 324 WRITE(numout,*) ' level of print nn_print = ', nn_print 328 325 WRITE(numout,*) ' Start i indice for SUM control nn_ictls = ', nn_ictls … … 439 436 !!---------------------------------------------------------------------- 440 437 ! 441 ierr = oce_alloc () ! ocean 438 ierr = oce_alloc () ! ocean 442 439 ierr = ierr + dia_wri_alloc() 443 440 ierr = ierr + dom_oce_alloc() ! ocean domain … … 448 445 END SUBROUTINE nemo_alloc 449 446 450 447 451 448 SUBROUTINE nemo_set_cfctl(sn_cfctl, setto, for_all ) 452 449 !!---------------------------------------------------------------------- … … 479 476 !!====================================================================== 480 477 END MODULE nemogcm 478 -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/sbcssm.F90
r12249 r12724 54 54 !!---------------------------------------------------------------------- 55 55 !! NEMO/SAS 4.0 , NEMO Consortium (2018) 56 !! $Id: sbcssm.F90 1 0068 2018-08-28 14:09:04Z nicolasmartin$56 !! $Id: sbcssm.F90 12615 2020-03-26 15:18:49Z laurent $ 57 57 !! Software governed by the CeCILL license (see ./LICENSE) 58 58 !!---------------------------------------------------------------------- -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/usrdef_hgr.F90
r11930 r12724 14 14 !! usr_def_hgr : initialize the horizontal mesh 15 15 !!---------------------------------------------------------------------- 16 USE dom_oce , ONLY: nimpp, njmpp 16 USE dom_oce , ONLY: nimpp, njmpp ! ocean space and time domain 17 17 USE c1d , ONLY: rn_lon1d, rn_lat1d ! ocean lon/lat define by namelist 18 18 USE par_oce ! ocean space and time domain … … 30 30 !!---------------------------------------------------------------------- 31 31 !! NEMO/OCE 4.0 , NEMO Consortium (2018) 32 !! $Id: usrdef_hgr.F90 1 0072 2018-08-28 15:21:50Z nicolasmartin $32 !! $Id: usrdef_hgr.F90 12489 2020-02-28 15:55:11Z davestorkey $ 33 33 !! Software governed by the CeCILL license (see ./LICENSE) 34 34 !!---------------------------------------------------------------------- … … 54 54 !! 55 55 !! ** Action : - define longitude & latitude of t-, u-, v- and f-points (in degrees) 56 !! - define coriolis parameter at f-point if the domain in not on the sphere 56 !! - define coriolis parameter at f-point if the domain in not on the sphere (on beta-plane) 57 57 !! - define i- & j-scale factors at t-, u-, v- and f-points (in meters) 58 58 !! - define u- & v-surfaces (if gridsize reduction is used in some straits) (in m2) -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/usrdef_nam.F90
r12249 r12724 8 8 !!====================================================================== 9 9 !! History : 4.0 ! 2016-03 (S. Flavoni, G. Madec) Original code 10 !! History :4.x ! 2019-10 (L. Brodeau) for STATION_ASF (C1D meets SAS)10 !! 4.x ! 2019-10 (L. Brodeau) for STATION_ASF (C1D meets SAS) 11 11 !!---------------------------------------------------------------------- 12 12 … … 15 15 !! usr_def_hgr : initialize the horizontal mesh 16 16 !!---------------------------------------------------------------------- 17 USE dom_oce , ONLY: nimpp, njmpp 18 USE dom_oce , ONLY: ln_zco, ln_zps, ln_sco ! flag of type of coordinate17 USE dom_oce , ONLY: nimpp, njmpp ! ocean space and time domain 18 !!! USE dom_oce , ONLY: ln_zco, ln_zps, ln_sco ! flag of type of coordinate 19 19 USE par_oce ! ocean space and time domain 20 20 USE phycst ! physical constants … … 33 33 !!---------------------------------------------------------------------- 34 34 !! NEMO/OCE 4.0 , NEMO Consortium (2018) 35 !! $Id: usrdef_nam.F90 1 1536 2019-09-11 13:54:18Z smasson$35 !! $Id: usrdef_nam.F90 12377 2020-02-12 14:39:06Z acc $ 36 36 !! Software governed by the CeCILL license (see ./LICENSE) 37 37 !!---------------------------------------------------------------------- … … 68 68 kk_cfg = 0 69 69 70 ! Global Domain size: STATION_ASF domain is 3 x 3 grid-points x 75or vertical levels70 ! Global Domain size: STATION_ASF domain is 3 x 3 grid-points x 2 or vertical levels 71 71 kpi = 3 72 72 kpj = 3 73 kpk = 173 kpk = 2 ! 2, rather than 1, because 1 would cause some issues... like overflow in array boundary indexes, etc... 74 74 ! 75 75 ! ! Set the lateral boundary condition of the global domain -
NEMO/branches/2020/dev_r12377_KERNEL-06_techene_e3/tests/STATION_ASF/MY_SRC/usrdef_zgr.F90
r12038 r12724 1 1 MODULE usrdef_zgr 2 2 !!====================================================================== 3 !! *** MODULEusrdef_zgr ***3 !! *** MODULE usrdef_zgr *** 4 4 !! 5 5 !! === STATION_ASF case === 6 6 !! 7 !! user defined :vertical coordinate system of a user configuration7 !! User defined : vertical coordinate system of a user configuration 8 8 !!====================================================================== 9 !! History : 4.0 ! 2019-10 (L. Brodeau) Original code 9 !! History : 4.0 ! 2016-06 (G. Madec) Original code 10 !! 4.x ! 2019-10 (L. Brodeau) Station ASF 10 11 !!---------------------------------------------------------------------- 11 12 12 13 !!---------------------------------------------------------------------- 13 !! usr_def_zgr : user defined vertical coordinate system (required) 14 !! usr_def_zgr : user defined vertical coordinate system 15 !! zgr_z : reference 1D z-coordinate 16 !! zgr_top_bot: ocean top and bottom level indices 17 !! zgr_zco : 3D verticl coordinate in pure z-coordinate case 14 18 !!--------------------------------------------------------------------- 15 19 USE oce ! ocean variables 16 !USE dom_oce ! ocean domain17 !USE depth_e3 ! depth <=> e318 20 USE usrdef_nam ! User defined : namelist variables 19 21 ! … … 21 23 USE lbclnk ! ocean lateral boundary conditions (or mpp link) 22 24 USE lib_mpp ! distributed memory computing library 23 USE timing ! Timing24 25 25 26 IMPLICIT NONE 26 27 PRIVATE 27 28 28 PUBLIC usr_def_zgr ! called by domzgr.F9029 PUBLIC usr_def_zgr ! called by domzgr.F90 29 30 30 31 !!---------------------------------------------------------------------- 31 32 !! NEMO/OCE 4.0 , NEMO Consortium (2018) 32 !! $Id: usrdef_zgr.F90 1 0072 2018-08-28 15:21:50Z nicolasmartin$33 !! $Id: usrdef_zgr.F90 12377 2020-02-12 14:39:06Z acc $ 33 34 !! Software governed by the CeCILL license (see ./LICENSE) 34 35 !!---------------------------------------------------------------------- … … 47 48 !! 48 49 !!---------------------------------------------------------------------- 49 LOGICAL , INTENT( out) :: ld_zco, ld_zps, ld_sco ! vertical coordinate flags ( read in namusr_def )50 LOGICAL , INTENT( 51 REAL(wp), DIMENSION(:) , INTENT( 52 REAL(wp), DIMENSION(:) , INTENT( 53 REAL(wp), DIMENSION(:,:,:), INTENT( 54 REAL(wp), DIMENSION(:,:,:), INTENT( 55 REAL(wp), DIMENSION(:,:,:), INTENT( out) :: pe3w , pe3uw, pe3vw ! i-scale factors56 INTEGER , DIMENSION(:,:) , INTENT( 50 LOGICAL , INTENT(out) :: ld_zco, ld_zps, ld_sco ! vertical coordinate flags 51 LOGICAL , INTENT(out) :: ld_isfcav ! under iceshelf cavity flag 52 REAL(wp), DIMENSION(:) , INTENT(out) :: pdept_1d, pdepw_1d ! 1D grid-point depth [m] 53 REAL(wp), DIMENSION(:) , INTENT(out) :: pe3t_1d , pe3w_1d ! 1D grid-point depth [m] 54 REAL(wp), DIMENSION(:,:,:), INTENT(out) :: pdept, pdepw ! grid-point depth [m] 55 REAL(wp), DIMENSION(:,:,:), INTENT(out) :: pe3t , pe3u , pe3v , pe3f ! vertical scale factors [m] 56 REAL(wp), DIMENSION(:,:,:), INTENT(out) :: pe3w , pe3uw, pe3vw ! i-scale factors 57 INTEGER , DIMENSION(:,:) , INTENT(out) :: k_top, k_bot ! first & last ocean level 57 58 !!---------------------------------------------------------------------- 58 59 ! … … 61 62 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 62 63 ! 63 64 ! 65 ! type of vertical coordinate 66 ! --------------------------- 64 67 ld_zco = .TRUE. ! z-coordinate without ocean cavities 65 68 ld_zps = .FALSE. 66 69 ld_sco = .FALSE. 67 70 ld_isfcav = .FALSE. 68 71 72 !! 1st level (the only one that matters) 69 73 pdept_1d(1) = rn_dept1 ! depth (m) at which the SST is taken/measured == depth of first T point! 70 74 pdepw_1d(1) = 0._wp … … 72 76 pe3w_1d(1) = rn_dept1 ! LB??? 73 77 74 pdept(:,:,:) = rn_dept1 75 pdepw(:,:,:) = 0._wp 76 pe3t(:,:,:) = 2._wp*rn_dept1 77 pe3u(:,:,:) = 2._wp*rn_dept1 78 pe3v(:,:,:) = 2._wp*rn_dept1 79 pe3f(:,:,:) = 2._wp*rn_dept1 80 pe3w(:,:,:) = rn_dept1 ! LB??? 81 pe3uw(:,:,:) = rn_dept1 ! LB??? 82 pe3vw(:,:,:) = rn_dept1 ! LB??? 78 pdept(:,:,1) = rn_dept1 79 pdepw(:,:,1) = 0._wp 80 pe3t(:,:,1) = 2._wp*rn_dept1 81 pe3u(:,:,1) = 2._wp*rn_dept1 82 pe3v(:,:,1) = 2._wp*rn_dept1 83 pe3f(:,:,1) = 2._wp*rn_dept1 84 pe3w(:,:,1) = rn_dept1 ! LB??? 85 pe3uw(:,:,1) = rn_dept1 ! LB??? 86 pe3vw(:,:,1) = rn_dept1 ! LB??? 87 88 !! 2nd level, technically useless (only for the sake of code stability) 89 pdept_1d(2) = 3._wp*rn_dept1 90 pdepw_1d(2) = 2._wp*rn_dept1 91 pe3t_1d(2) = 2._wp*rn_dept1 92 pe3w_1d(2) = 2._wp*rn_dept1 93 94 pdept(:,:,2) = 3._wp*rn_dept1 95 pdepw(:,:,2) = 2._wp*rn_dept1 96 pe3t(:,:,2) = 2._wp*rn_dept1 97 pe3u(:,:,2) = 2._wp*rn_dept1 98 pe3v(:,:,2) = 2._wp*rn_dept1 99 pe3f(:,:,2) = 2._wp*rn_dept1 100 pe3w(:,:,2) = 2._wp*rn_dept1 101 pe3uw(:,:,2) = 2._wp*rn_dept1 102 pe3vw(:,:,2) = 2._wp*rn_dept1 103 83 104 k_top = 1 84 105 k_bot = 1 85 ! 106 86 107 END SUBROUTINE usr_def_zgr 87 108 !!======================================================================
Note: See TracChangeset
for help on using the changeset viewer.