- Timestamp:
- 2019-10-12T16:08:18+02:00 (5 years ago)
- Location:
- NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests
- Files:
-
- 2 deleted
- 45 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/best_jpni_jpnj_eorca025
r9856 r11692 624 624 nb_cores 36180 ( 180 x 201 ), nb_points 80 ( 10 x 8 ) 625 625 nb_cores 38560 ( 160 x 241 ), nb_points 77 ( 11 x 7 ) 626 nb_cores 41406 ( 206 x 201 ), nb_points 72 ( 9 x 8 ) 627 nb_cores 43380 ( 180 x 241 ), nb_points 70 ( 10 x 7 ) 628 nb_cores 48240 ( 240 x 201 ), nb_points 64 ( 8 x 8 ) 629 nb_cores 49646 ( 206 x 241 ), nb_points 63 ( 9 x 7 ) 630 nb_cores 54360 ( 180 x 302 ), nb_points 60 ( 10 x 6 ) 631 nb_cores 54360 ( 360 x 151 ), nb_points 60 ( 6 x 10 ) 632 nb_cores 57840 ( 240 x 241 ), nb_points 56 ( 8 x 7 ) 633 nb_cores 62212 ( 206 x 302 ), nb_points 54 ( 9 x 6 ) 634 nb_cores 69408 ( 288 x 241 ), nb_points 49 ( 7 x 7 ) 635 nb_cores 72360 ( 360 x 201 ), nb_points 48 ( 6 x 8 ) 636 nb_cores 82812 ( 206 x 402 ), nb_points 45 ( 9 x 5 ) 637 nb_cores 86760 ( 360 x 241 ), nb_points 42 ( 6 x 7 ) 638 nb_cores 96480 ( 240 x 402 ), nb_points 40 ( 8 x 5 ) 639 nb_cores 96480 ( 480 x 201 ), nb_points 40 ( 5 x 8 ) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/best_jpni_jpnj_eorca12
r9856 r11692 1300 1300 nb_cores 49852 ( 206 x 242 ), nb_points 345 ( 23 x 15 ) 1301 1301 nb_cores 49950 ( 270 x 185 ), nb_points 342 ( 18 x 19 ) 1302 nb_cores 50400 ( 288 x 175 ), nb_points 340 ( 17 x 20 ) 1303 nb_cores 50400 ( 240 x 210 ), nb_points 340 ( 20 x 17 ) 1304 nb_cores 51294 ( 309 x 166 ), nb_points 336 ( 16 x 21 ) 1305 nb_cores 52272 ( 216 x 242 ), nb_points 330 ( 22 x 15 ) 1306 nb_cores 53190 ( 270 x 197 ), nb_points 324 ( 18 x 18 ) 1307 nb_cores 53280 ( 288 x 185 ), nb_points 323 ( 17 x 19 ) 1308 nb_cores 54000 ( 240 x 225 ), nb_points 320 ( 20 x 16 ) 1309 nb_cores 55176 ( 228 x 242 ), nb_points 315 ( 21 x 15 ) 1310 nb_cores 56199 ( 393 x 143 ), nb_points 312 ( 13 x 24 ) 1311 nb_cores 56700 ( 270 x 210 ), nb_points 306 ( 18 x 17 ) 1312 nb_cores 57165 ( 309 x 185 ), nb_points 304 ( 16 x 19 ) 1313 nb_cores 58080 ( 240 x 242 ), nb_points 300 ( 20 x 15 ) 1314 nb_cores 58916 ( 206 x 286 ), nb_points 299 ( 23 x 13 ) 1315 nb_cores 59760 ( 360 x 166 ), nb_points 294 ( 14 x 21 ) 1316 nb_cores 60480 ( 288 x 210 ), nb_points 289 ( 17 x 17 ) 1317 nb_cores 60750 ( 270 x 225 ), nb_points 288 ( 18 x 16 ) 1318 nb_cores 61605 ( 333 x 185 ), nb_points 285 ( 15 x 19 ) 1319 nb_cores 63000 ( 360 x 175 ), nb_points 280 ( 14 x 20 ) 1320 nb_cores 64800 ( 288 x 225 ), nb_points 272 ( 17 x 16 ) 1321 nb_cores 65340 ( 270 x 242 ), nb_points 270 ( 18 x 15 ) 1322 nb_cores 66600 ( 360 x 185 ), nb_points 266 ( 14 x 19 ) 1323 nb_cores 68040 ( 216 x 315 ), nb_points 264 ( 22 x 12 ) 1324 nb_cores 68640 ( 240 x 286 ), nb_points 260 ( 20 x 13 ) 1325 nb_cores 69525 ( 309 x 225 ), nb_points 256 ( 16 x 16 ) 1326 nb_cores 69696 ( 288 x 242 ), nb_points 255 ( 17 x 15 ) 1327 nb_cores 70920 ( 360 x 197 ), nb_points 252 ( 14 x 18 ) 1328 nb_cores 72705 ( 393 x 185 ), nb_points 247 ( 13 x 19 ) 1329 nb_cores 74778 ( 309 x 242 ), nb_points 240 ( 16 x 15 ) 1330 nb_cores 75600 ( 360 x 210 ), nb_points 238 ( 14 x 17 ) 1331 nb_cores 77220 ( 270 x 286 ), nb_points 234 ( 18 x 13 ) 1332 nb_cores 79680 ( 480 x 166 ), nb_points 231 ( 11 x 21 ) 1333 nb_cores 79920 ( 432 x 185 ), nb_points 228 ( 12 x 19 ) 1334 nb_cores 80586 ( 333 x 242 ), nb_points 225 ( 15 x 15 ) 1335 nb_cores 81000 ( 360 x 225 ), nb_points 224 ( 14 x 16 ) 1336 nb_cores 82368 ( 288 x 286 ), nb_points 221 ( 17 x 13 ) 1337 nb_cores 84000 ( 480 x 175 ), nb_points 220 ( 11 x 20 ) 1338 nb_cores 84000 ( 240 x 350 ), nb_points 220 ( 20 x 11 ) 1339 nb_cores 85050 ( 270 x 315 ), nb_points 216 ( 18 x 12 ) 1340 nb_cores 87120 ( 360 x 242 ), nb_points 210 ( 14 x 15 ) 1341 nb_cores 88374 ( 309 x 286 ), nb_points 208 ( 16 x 13 ) 1342 nb_cores 90720 ( 288 x 315 ), nb_points 204 ( 17 x 12 ) 1343 nb_cores 90720 ( 432 x 210 ), nb_points 204 ( 12 x 17 ) 1344 nb_cores 94500 ( 270 x 350 ), nb_points 198 ( 18 x 11 ) 1345 nb_cores 94680 ( 360 x 263 ), nb_points 196 ( 14 x 14 ) 1346 nb_cores 95106 ( 393 x 242 ), nb_points 195 ( 13 x 15 ) 1347 nb_cores 97200 ( 432 x 225 ), nb_points 192 ( 12 x 16 ) 1348 nb_cores 99900 ( 540 x 185 ), nb_points 190 ( 10 x 19 ) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/namelist_cfg_orca025_like
r10539 r11692 9 9 nn_it000 = 1 ! first time step 10 10 nn_itend = 1000 ! last time step 11 nn_stock = 0! frequency of creation of a restart file (modulo referenced to 1)12 nn_write = 0! frequency of write in the output file (modulo referenced to nn_it000)11 nn_stock = -1 ! frequency of creation of a restart file (modulo referenced to 1) 12 nn_write = -1 ! frequency of write in the output file (modulo referenced to nn_it000) 13 13 / 14 14 !----------------------------------------------------------------------- … … 30 30 &namctl ! Control prints (default: OFF) 31 31 !----------------------------------------------------------------------- 32 ln_ctl = .false. ! trends control print (expensive!)33 32 nn_print = 0 ! level of print (0 no extra print) 34 33 ln_timing = .false. ! timing by routine write out in timing.output file -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/namelist_cfg_orca12_like
r10539 r11692 9 9 nn_it000 = 1 ! first time step 10 10 nn_itend = 1000 ! last time step 11 nn_stock = 0! frequency of creation of a restart file (modulo referenced to 1)12 nn_write = 0! frequency of write in the output file (modulo referenced to nn_it000)11 nn_stock = -1 ! frequency of creation of a restart file (modulo referenced to 1) 12 nn_write = -1 ! frequency of write in the output file (modulo referenced to nn_it000) 13 13 / 14 14 !----------------------------------------------------------------------- … … 30 30 &namctl ! Control prints (default: OFF) 31 31 !----------------------------------------------------------------------- 32 ln_ctl = .false. ! trends control print (expensive!)33 32 nn_print = 0 ! level of print (0 no extra print) 34 33 ln_timing = .false. ! timing by routine write out in timing.output file -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/namelist_cfg_orca1_like
r10539 r11692 9 9 nn_it000 = 1 ! first time step 10 10 nn_itend = 1000 ! last time step 11 nn_stock = 0! frequency of creation of a restart file (modulo referenced to 1)12 nn_write = 0! frequency of write in the output file (modulo referenced to nn_it000)11 nn_stock = -1 ! frequency of creation of a restart file (modulo referenced to 1) 12 nn_write = -1 ! frequency of write in the output file (modulo referenced to nn_it000) 13 13 / 14 14 !----------------------------------------------------------------------- … … 30 30 &namctl ! Control prints (default: OFF) 31 31 !----------------------------------------------------------------------- 32 ln_ctl = .false. ! trends control print (expensive!)33 32 nn_print = 0 ! level of print (0 no extra print) 34 33 ln_timing = .false. ! timing by routine write out in timing.output file -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/namelist_ice_cfg
r10179 r11692 74 74 &namini ! Ice initialization 75 75 !------------------------------------------------------------------------------ 76 rn_thres_sst = 0.5 ! max delta temp. above Tfreeze with initial ice = (sst - tfreeze) 76 77 / 77 78 !------------------------------------------------------------------------------ -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/namelist_top_cfg
r10343 r11692 57 57 ! ! file name ! frequency (hours) ! variable ! time interp. ! clim ! 'yearly'/ ! weights ! rotation ! land/sea mask ! 58 58 ! ! ! (if <0 months) ! name ! (logical) ! (T/F) ! 'monthly' ! filename ! pairing ! filename ! 59 sn_trcdta(1) = 'data_DIC_nomask' , -12 60 sn_trcdta(2) = 'data_Alkalini_nomask' , -12 61 sn_trcdta(3) = 'data_O2_nomask' , -1 62 sn_trcdta(5) = 'data_PO4_nomask' , -1 63 sn_trcdta(7) = 'data_Si_nomask' , -1 64 sn_trcdta(10) = 'data_DOC_nomask' , -12 65 sn_trcdta(14) = 'data_Fer_nomask' , -12 66 sn_trcdta(23) = 'data_NO3_nomask' , -1 59 sn_trcdta(1) = 'data_DIC_nomask' , -12. , 'DIC' , .false. , .true. , 'yearly' , '' , '' , '' 60 sn_trcdta(2) = 'data_Alkalini_nomask' , -12. , 'Alkalini', .false. , .true. , 'yearly' , '' , '' , '' 61 sn_trcdta(3) = 'data_O2_nomask' , -1. , 'O2' , .true. , .true. , 'yearly' , '' , '' , '' 62 sn_trcdta(5) = 'data_PO4_nomask' , -1. , 'PO4' , .true. , .true. , 'yearly' , '' , '' , '' 63 sn_trcdta(7) = 'data_Si_nomask' , -1. , 'Si' , .true. , .true. , 'yearly' , '' , '' , '' 64 sn_trcdta(10) = 'data_DOC_nomask' , -12. , 'DOC' , .false. , .true. , 'yearly' , '' , '' , '' 65 sn_trcdta(14) = 'data_Fer_nomask' , -12. , 'Fer' , .false. , .true. , 'yearly' , '' , '' , '' 66 sn_trcdta(23) = 'data_NO3_nomask' , -1. , 'NO3' , .true. , .true. , 'yearly' , '' , '' , '' 67 67 rn_trfac(1) = 1.0e-06 ! multiplicative factor 68 68 rn_trfac(2) = 1.0e-06 ! - - - - -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/sh_bench
r9869 r11692 9 9 machine=$( hostname | sed -e "s/[0-9]*//g" ) 10 10 case $machine in 11 "jean-zay") ncore_node=40 ;; 11 12 "beaufixlogin") ncore_node=40 ;; 12 13 "curie") ncore_node=16 ;; -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/EXPREF/submit_bench
r9870 r11692 6 6 # 7 7 set -u 8 set -vx8 #set -vx 9 9 # 10 10 cores=$1 … … 15 15 # 16 16 # number of processes for each executable 17 nproc_exe1=$( echo $cores | bc ) 18 (( nproc = $nproc_exe1 )) 19 (( nnode = $nproc / $ncore_node )) 20 [ $nnode -lt 1 ] && nnode=1 17 nproc_exe1=$( echo $cores | bc ) 18 nproc=$nproc_exe1 19 nnode=$(( ( $nproc + $ncore_node - 1 ) / $ncore_node )) 21 20 22 21 nproc5=$( printf "%05d\n" ${nproc_exe1} ) 22 23 case ${resolution} in 24 "1") 25 if [ $nproc_exe1 -lt 50 ] 26 then 27 timejob=3600 28 elif [ $nproc_exe1 -lt 100 ] 29 then 30 timejob=1800 31 elif [ $nproc_exe1 -lt 200 ] 32 then 33 timejob=900 34 else 35 timejob=600 36 fi 37 ;; 38 "025") 39 if [ $nproc_exe1 -lt 50 ] 40 then 41 timejob=15000 42 elif [ $nproc_exe1 -lt 100 ] 43 then 44 timejob=7000 45 elif [ $nproc_exe1 -lt 200 ] 46 then 47 timejob=3600 48 elif [ $nproc_exe1 -lt 400 ] 49 then 50 timejob=2000 51 elif [ $nproc_exe1 -lt 800 ] 52 then 53 timejob=1000 54 else 55 timejob=600 56 fi 57 ;; 58 "12") 59 if [ $nproc_exe1 -lt 200 ] 60 then 61 timejob=30000 62 elif [ $nproc_exe1 -lt 400 ] 63 then 64 timejob=15000 65 elif [ $nproc_exe1 -lt 800 ] 66 then 67 timejob=20000 68 elif [ $nproc_exe1 -lt 1600 ] 69 then 70 timejob=15000 71 elif [ $nproc_exe1 -lt 3200 ] 72 then 73 timejob=7500 74 elif [ $nproc_exe1 -lt 10000 ] 75 then 76 timejob=5000 77 elif [ $nproc_exe1 -lt 20000 ] 78 then 79 timejob=2500 80 else 81 timejob=1200 82 fi 83 ;; 84 esac 85 23 86 24 87 ###################################################################### … … 100 163 if [[ ( "$machine" == "curie" ) || ( "$machine" == "irene" ) ]] 101 164 then 102 103 case ${resolution} in104 "1")105 if [ $nproc_exe1 -lt 50 ]106 then107 timejob=3600108 elif [ $nproc_exe1 -lt 100 ]109 then110 timejob=1800111 elif [ $nproc_exe1 -lt 200 ]112 then113 timejob=900114 else115 timejob=600116 fi117 ;;118 "025")119 if [ $nproc_exe1 -lt 50 ]120 then121 timejob=15000122 elif [ $nproc_exe1 -lt 100 ]123 then124 timejob=7000125 elif [ $nproc_exe1 -lt 200 ]126 then127 timejob=3600128 elif [ $nproc_exe1 -lt 400 ]129 then130 timejob=2000131 elif [ $nproc_exe1 -lt 800 ]132 then133 timejob=1000134 else135 timejob=600136 fi137 ;;138 "12")139 if [ $nproc_exe1 -lt 200 ]140 then141 timejob=30000142 elif [ $nproc_exe1 -lt 400 ]143 then144 timejob=15000145 elif [ $nproc_exe1 -lt 800 ]146 then147 timejob=8000148 elif [ $nproc_exe1 -lt 1600 ]149 then150 timejob=5000151 elif [ $nproc_exe1 -lt 3200 ]152 then153 timejob=2500154 else155 timejob=1200156 fi157 ;;158 esac159 165 160 166 [ "$machine" == "curie" ] && queuename=standard || queuename=skylake 161 167 162 jobname=$HOME/binrun/jobbench 168 EXPjob=../EXP_${resolution}_${nproc5}_${dateref} 169 mkdir -p ${EXPjob} 170 cd ${EXPjob} 171 jobname=jobbench 163 172 cat > $jobname << EOF 164 173 #!/bin/bash … … 176 185 # 177 186 178 cd \${BRIDGE_MSUB_PWD}/.. 179 180 181 EXPjob=EXP_${resolution}_${nproc5}_${dateref} 182 rsync -av --exclude="*eo" EXPREF/ \${EXPjob}/ 183 rsync -av EXP00/nemo \${EXPjob}/nemo 184 cd \${EXPjob} 187 cd \${BRIDGE_MSUB_PWD} 188 189 for ff in \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*cfg \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*ref \${BRIDGE_MSUB_PWD}/../BLD/bin/nemo.exe 190 do 191 cp \$ff . 192 done 185 193 186 194 jpni=${cores/\**/} 187 195 jpnj=${cores/?*\*/} 188 196 189 sed -e "s/jpni *=.*/jpni = \${jpni}/" -e "s/jpnj *=.*/jpnj = \${jpnj}/" namelist_cfg_orca${resolution}_like > namelist_cfg 190 191 time ccc_mprun -n \${BRIDGE_MSUB_NPROC} ./nemo > jobout_${resolution}_${nproc5}_${dateref} 197 sed -e "s/jpni *=.*/jpni = \${jpni}/" \ 198 -e "s/jpnj *=.*/jpnj = \${jpnj}/"\ 199 -e "s/ln_timing *= *.false./ln_timing = .true./" \ 200 \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_cfg_orca${resolution}_like > namelist_cfg 201 202 time ccc_mprun -n \${BRIDGE_MSUB_NPROC} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 192 203 193 204 EOF … … 196 207 197 208 fi 209 210 ###################################################################### 211 ### Jean-Zay 212 ###################################################################### 213 214 if [ "$machine" == "jean-zay" ] 215 then 216 hh=$( printf "%02d\n" $(( ${timejob} / 3600 )) ) 217 mm=$( printf "%02d\n" $(( ( ${timejob} % 3600 ) / 60 )) ) 218 ss=$( printf "%02d\n" $(( ( ${timejob} % 3600 ) % 60 )) ) 219 220 EXPjob=../EXP_${resolution}_${nproc5}_${dateref} 221 mkdir -p ${EXPjob} 222 cd ${EXPjob} 223 jobname=jobbench 224 cat > $jobname << EOF 225 #!/bin/bash 226 #SBATCH --job-name=Seq # nom du job 227 #SBATCH --partition=cpu_gct3 # demande d'allocation sur la partition CPU 228 #SBATCH --nodes=${nnode} # nombre de noeuds 229 #SBATCH --ntasks-per-node=${ncore_node} # nombre de taches MPI par noeud 230 #SBATCH --ntasks-per-core=1 # 1 processus MPI par coeur physique (pas d'hyperthreading) 231 #SBATCH --time=${hh}:${mm}:${ss} # temps d execution maximum demande (HH:MM:SS) 232 #SBATCH --output=bench_${resolution}_${nproc5}_%j.eo # nom du fichier de sortie 233 #SBATCH --error=bench_${resolution}_${nproc5}_%j.eo # nom du fichier d'erreur (ici en commun avec la sortie) 234 #========================================== 235 set -u 236 #set -xv 237 # 238 #cd \${SLURM_SUBMIT_DIR} 239 cd \${JOBSCRATCH} 240 pwd 241 242 for ff in \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*cfg \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*ref \${SLURM_SUBMIT_DIR}/../BLD/bin/nemo.exe 243 do 244 cp \$ff . 245 done 246 247 jpni=${cores/\**/} 248 jpnj=${cores/?*\*/} 249 250 sed -e "s/jpni *=.*/jpni = \${jpni}/" \ 251 -e "s/jpnj *=.*/jpnj = \${jpnj}/" \ 252 -e "s/ln_timing *= *.false./ln_timing = .true./" \ 253 \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_cfg_orca${resolution}_like > namelist_cfg 254 255 ls -l 256 257 echo 258 echo 259 echo " =========== start the model ===========" 260 echo 261 echo 262 263 time srun --mpi=pmi2 --cpu-bind=cores -K1 -n ${nproc} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 264 265 ls -l 266 267 if [ "\$( pwd )" != "\${SLURM_SUBMIT_DIR}" ] 268 then 269 rsync -av namelist_cfg time.step ocean.output jobout_${resolution}_${nproc5}_${dateref} communication_report.txt layout.dat timing.output output.namelist* \${SLURM_SUBMIT_DIR} 270 fi 271 272 EOF 273 274 sbatch $jobname 275 276 fi -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/MY_SRC/usrdef_istate.F90
r10179 r11692 64 64 DO jj = 1, jpj 65 65 DO ji = 1, jpi 66 z2d(ji,jj) = 0.1 * ( 0.5 - REAL( nimpp + ji - 1 + ( njmpp + jj - 2) * jpiglo, wp ) / REAL( jpiglo * jpjglo, wp ) )66 z2d(ji,jj) = 0.1 * ( 0.5 - REAL( mig(ji) + mjg(jj) * jpiglo, wp ) / REAL( jpiglo * jpjglo, wp ) ) 67 67 ENDDO 68 68 ENDDO … … 73 73 DO jk = 1, jpk 74 74 zfact = REAL(jk-1,wp) / REAL(jpk-1,wp) ! 0 to 1 to add a basic stratification 75 ! temperature choosen to lead to 20% ice 76 pts(:,:,jk,jp_tem) = 2._wp - 0.1_wp * zfact + z2d(:,:) * 100._wp ! 2 to 1.9 +/- 5 degG 77 WHERE ( pts(:,:,jk,jp_tem) < -1.5_wp ) pts(:,:,jk,jp_tem) = -1.5_wp + z2d(:,:) * 0.2_wp 75 ! temperature choosen to lead to ~50% ice at the beginning if rn_thres_sst = 0.5 76 pts(:,:,jk,jp_tem) = 20._wp*z2d(:,:) - 1._wp - 0.5_wp * zfact ! -1 to -1.5 +/-1.0 degG 78 77 ! salinity: 79 78 pts(:,:,jk,jp_sal) = 30._wp + 1._wp * zfact + z2d(:,:) ! 30 to 31 +/- 0.05 psu … … 84 83 ! 85 84 CALL lbc_lnk('usrdef_istate', pssh, 'T', 1. ) ! apply boundary conditions 86 CALL lbc_lnk( 'usrdef_istate',pts, 'T', 1. ) ! apply boundary conditions87 CALL lbc_lnk( 'usrdef_istate',pu, 'U', -1. ) ! apply boundary conditions88 CALL lbc_lnk( 'usrdef_istate',pv, 'V', -1. ) ! apply boundary conditions85 CALL lbc_lnk('usrdef_istate', pts, 'T', 1. ) ! apply boundary conditions 86 CALL lbc_lnk('usrdef_istate', pu, 'U', -1. ) ! apply boundary conditions 87 CALL lbc_lnk('usrdef_istate', pv, 'V', -1. ) ! apply boundary conditions 89 88 90 89 END SUBROUTINE usr_def_istate -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/MY_SRC/usrdef_nam.F90
r10428 r11692 29 29 CONTAINS 30 30 31 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )31 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 32 32 !!---------------------------------------------------------------------- 33 33 !! *** ROUTINE dom_nam *** … … 41 41 !! ** input : - namusr_def namelist found in namelist_cfg 42 42 !!---------------------------------------------------------------------- 43 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information44 43 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 45 44 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 48 47 ! 49 48 ! 50 INTEGER :: ios , ii! Local integer49 INTEGER :: ios ! Local integer 51 50 ! !!* namusr_def namelist *!! 52 51 INTEGER :: nn_isize ! number of point in i-direction of global(local) domain if >0 (<0) … … 55 54 INTEGER :: nn_perio ! periodicity 56 55 ! !!* nammpp namelist *!! 57 CHARACTER(len=1) :: cn_mpi_send 58 INTEGER :: nn_buffer, jpni, jpnj 56 INTEGER :: jpni, jpnj 59 57 LOGICAL :: ln_nnogather 60 58 !! 61 59 NAMELIST/namusr_def/ nn_isize, nn_jsize, nn_ksize, nn_perio 62 NAMELIST/nammpp/ cn_mpi_send, nn_buffer,jpni, jpnj, ln_nnogather60 NAMELIST/nammpp/ jpni, jpnj, ln_nnogather 63 61 !!---------------------------------------------------------------------- 64 62 ! 65 63 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 66 64 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 903 ) 67 903 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 68 WRITE( ldnam(:), namusr_def ) 65 903 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 66 ! 67 IF(lwm) WRITE( numond, namusr_def ) 69 68 ! 70 69 cd_cfg = 'BENCH' ! name & resolution (not used) 71 70 kk_cfg = 0 72 71 ! 73 72 IF( nn_isize < 0 .AND. nn_jsize < 0 ) THEN 74 73 ! 75 74 REWIND( numnam_ref ) ! Namelist nammpp in reference namelist: mpi variables 76 75 READ ( numnam_ref, nammpp, IOSTAT = ios, ERR = 901) 77 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nammpp in reference namelist' , lwp)76 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nammpp in reference namelist' ) 78 77 ! 79 78 REWIND( numnam_cfg ) ! Namelist nammpp in configuration namelist: mpi variables 80 79 READ ( numnam_cfg, nammpp, IOSTAT = ios, ERR = 902 ) 81 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nammpp in configuration namelist' , lwp)80 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nammpp in configuration namelist' ) 82 81 83 82 kpi = ( -nn_isize - 2*nn_hls ) * jpni + 2*nn_hls … … 87 86 kpj = nn_jsize 88 87 ENDIF 89 88 ! 90 89 kpk = nn_ksize 91 90 kperio = nn_perio 92 93 91 ! ! control print 94 ii = 1 95 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 96 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1 97 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1 98 WRITE(ldtxt(ii),*) ' Namelist namusr_def : BENCH test case' ; ii = ii + 1 99 IF( nn_isize > 0 ) THEN 100 WRITE(ldtxt(ii),*) ' global domain size-x nn_isize = ', nn_isize ; ii = ii + 1 101 ELSE 102 WRITE(ldtxt(ii),*) ' jpni = ', jpni ; ii = ii + 1 103 WRITE(ldtxt(ii),*) ' local domain size-x -nn_isize = ', -nn_isize ; ii = ii + 1 104 WRITE(ldtxt(ii),*) ' global domain size-x kpi = ', kpi ; ii = ii + 1 92 IF(lwp) THEN 93 WRITE(numout,*) ' ' 94 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 95 WRITE(numout,*) '~~~~~~~~~~~ ' 96 WRITE(numout,*) ' Namelist namusr_def : BENCH test case' 97 IF( nn_isize > 0 ) THEN 98 WRITE(numout,*) ' global domain size-x nn_isize = ', nn_isize 99 ELSE 100 WRITE(numout,*) ' jpni = ', jpni 101 WRITE(numout,*) ' local domain size-x -nn_isize = ', -nn_isize 102 WRITE(numout,*) ' global domain size-x kpi = ', kpi 103 ENDIF 104 IF( nn_jsize > 0 ) THEN 105 WRITE(numout,*) ' global domain size-y nn_jsize = ', nn_jsize 106 ELSE 107 WRITE(numout,*) ' jpnj = ', jpnj 108 WRITE(numout,*) ' local domain size-y -nn_jsize = ', -nn_jsize 109 WRITE(numout,*) ' global domain size-y kpj = ', kpj 110 ENDIF 111 WRITE(numout,*) ' global domain size-z nn_ksize = ', nn_ksize 112 WRITE(numout,*) ' LBC of the global domain kperio = ', kperio 105 113 ENDIF 106 IF( nn_jsize > 0 ) THEN107 WRITE(ldtxt(ii),*) ' global domain size-y nn_jsize = ', nn_jsize ; ii = ii + 1108 ELSE109 WRITE(ldtxt(ii),*) ' jpnj = ', jpnj ; ii = ii + 1110 WRITE(ldtxt(ii),*) ' local domain size-y -nn_jsize = ', -nn_jsize ; ii = ii + 1111 WRITE(ldtxt(ii),*) ' global domain size-y kpj = ', kpj ; ii = ii + 1112 ENDIF113 WRITE(ldtxt(ii),*) ' global domain size-z nn_ksize = ', nn_ksize ; ii = ii + 1114 WRITE(ldtxt(ii),*) ' LBC of the global domain kperio = ', kperio ; ii = ii + 1115 114 ! 116 115 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/MY_SRC/usrdef_zgr.F90
r10170 r11692 194 194 z2d(:,:) = REAL( jpkm1 , wp ) ! flat bottom 195 195 ! 196 IF( jperio == 3 .OR. jperio ==4 ) THEN ! add a small island in the upper corners to avoid model instabilities... 197 z2d(mi0( 1):mi1( 3),mj0(jpjglo-2):mj1(jpjglo)) = 0. 198 z2d(mi0(jpiglo-2):mi1(jpiglo),mj0(jpjglo-2):mj1(jpjglo)) = 0. 199 ENDIF 200 ! 196 201 CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. ) ! set surrounding land to zero (here jperio=0 ==>> closed) 197 202 ! -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/BENCH/MY_SRC/zdfiwm.F90
r10420 r11692 406 406 REWIND( numnam_ref ) ! Namelist namzdf_iwm in reference namelist : Wave-driven mixing 407 407 READ ( numnam_ref, namzdf_iwm, IOSTAT = ios, ERR = 901) 408 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist' , lwp)408 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist' ) 409 409 ! 410 410 REWIND( numnam_cfg ) ! Namelist namzdf_iwm in configuration namelist : Wave-driven mixing 411 411 READ ( numnam_cfg, namzdf_iwm, IOSTAT = ios, ERR = 902 ) 412 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist' , lwp)412 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist' ) 413 413 IF(lwm) WRITE ( numond, namzdf_iwm ) 414 414 ! -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/CANAL/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/CANAL/EXPREF/namelist_cfg
r10075 r11692 275 275 !! namdiu Cool skin and warm layer models (default: OFF) 276 276 !! namdiu Cool skin and warm layer models (default: OFF) 277 !! namflo float parameters ( "key_float")278 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")279 !! nam dct transports through some sections ("key_diadct")277 !! namflo float parameters (default: OFF) 278 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 279 !! nam_diadct transports through some sections (default: OFF) 280 280 !! nam_diatmb Top Middle Bottom Output (default: OFF) 281 281 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/CANAL/MY_SRC/diawri.F90
r10425 r11692 531 531 !! define all the NETCDF files and fields 532 532 !! At each time step call histdef to compute the mean if ncessary 533 !! Each n write time step, output the instantaneous or mean fields533 !! Each nn_write time step, output the instantaneous or mean fields 534 534 !!---------------------------------------------------------------------- 535 535 INTEGER, INTENT( in ) :: kt ! ocean time-step index … … 547 547 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zw3d ! 3D workspace 548 548 !!---------------------------------------------------------------------- 549 !550 IF( ln_timing ) CALL timing_start('dia_wri')551 549 ! 552 550 IF( ninist == 1 ) THEN !== Output the initial state and forcings ==! … … 555 553 ENDIF 556 554 ! 555 IF( nn_write == -1 ) RETURN ! we will never do any output 556 ! 557 IF( ln_timing ) CALL timing_start('dia_wri') 558 ! 557 559 ! 0. Initialisation 558 560 ! ----------------- … … 564 566 clop = "x" ! no use of the mask value (require less cpu time and otherwise the model crashes) 565 567 #if defined key_diainstant 566 zsto = n write * rdt568 zsto = nn_write * rdt 567 569 clop = "inst("//TRIM(clop)//")" 568 570 #else … … 570 572 clop = "ave("//TRIM(clop)//")" 571 573 #endif 572 zout = n write * rdt574 zout = nn_write * rdt 573 575 zmax = ( nitend - nit000 + 1 ) * rdt 574 576 … … 601 603 ! WRITE root name in date.file for use by postpro 602 604 IF(lwp) THEN 603 CALL dia_nam( clhstnam, n write,' ' )605 CALL dia_nam( clhstnam, nn_write,' ' ) 604 606 CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 605 607 WRITE(inum,*) clhstnam … … 609 611 ! Define the T grid FILE ( nid_T ) 610 612 611 CALL dia_nam( clhstnam, n write, 'grid_T' )613 CALL dia_nam( clhstnam, nn_write, 'grid_T' ) 612 614 IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam ! filename 613 615 CALL histbeg( clhstnam, jpi, glamt, jpj, gphit, & ! Horizontal grid: glamt and gphit … … 645 647 ! Define the U grid FILE ( nid_U ) 646 648 647 CALL dia_nam( clhstnam, n write, 'grid_U' )649 CALL dia_nam( clhstnam, nn_write, 'grid_U' ) 648 650 IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam ! filename 649 651 CALL histbeg( clhstnam, jpi, glamu, jpj, gphiu, & ! Horizontal grid: glamu and gphiu … … 658 660 ! Define the V grid FILE ( nid_V ) 659 661 660 CALL dia_nam( clhstnam, n write, 'grid_V' ) ! filename662 CALL dia_nam( clhstnam, nn_write, 'grid_V' ) ! filename 661 663 IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam 662 664 CALL histbeg( clhstnam, jpi, glamv, jpj, gphiv, & ! Horizontal grid: glamv and gphiv … … 671 673 ! Define the W grid FILE ( nid_W ) 672 674 673 CALL dia_nam( clhstnam, n write, 'grid_W' ) ! filename675 CALL dia_nam( clhstnam, nn_write, 'grid_W' ) ! filename 674 676 IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam 675 677 CALL histbeg( clhstnam, jpi, glamt, jpj, gphit, & ! Horizontal grid: glamt and gphit … … 762 764 ENDIF 763 765 764 IF( .NOT. ln_cpl) THEN766 IF( ln_ssr ) THEN 765 767 CALL histdef( nid_T, "sohefldp", "Surface Heat Flux: Damping" , "W/m2" , & ! qrp 766 768 & jpi, jpj, nh_T, 1 , 1, 1 , -99 , 32, clop, zsto, zout ) … … 770 772 & jpi, jpj, nh_T, 1 , 1, 1 , -99 , 32, clop, zsto, zout ) 771 773 ENDIF 772 773 IF( ln_cpl .AND. nn_ice <= 1 ) THEN 774 CALL histdef( nid_T, "sohefldp", "Surface Heat Flux: Damping" , "W/m2" , & ! qrp 775 & jpi, jpj, nh_T, 1 , 1, 1 , -99 , 32, clop, zsto, zout ) 776 CALL histdef( nid_T, "sowafldp", "Surface Water Flux: Damping" , "Kg/m2/s", & ! erp 777 & jpi, jpj, nh_T, 1 , 1, 1 , -99 , 32, clop, zsto, zout ) 778 CALL histdef( nid_T, "sosafldp", "Surface salt flux: Damping" , "Kg/m2/s", & ! erp * sn 779 & jpi, jpj, nh_T, 1 , 1, 1 , -99 , 32, clop, zsto, zout ) 780 ENDIF 781 774 782 775 clmx ="l_max(only(x))" ! max index on a period 783 776 ! CALL histdef( nid_T, "sobowlin", "Bowl Index" , "W-point", & ! bowl INDEX … … 855 848 ! donne le nombre d'elements, et ndex la liste des indices a sortir 856 849 857 IF( lwp .AND. MOD( itmod, n write ) == 0 ) THEN850 IF( lwp .AND. MOD( itmod, nn_write ) == 0 ) THEN 858 851 WRITE(numout,*) 'dia_wri : write model outputs in NetCDF files at ', kt, 'time-step' 859 852 WRITE(numout,*) '~~~~~~ ' … … 919 912 ENDIF 920 913 921 IF( .NOT. ln_cpl) THEN914 IF( ln_ssr ) THEN 922 915 CALL histwrite( nid_T, "sohefldp", it, qrp , ndim_hT, ndex_hT ) ! heat flux damping 923 916 CALL histwrite( nid_T, "sowafldp", it, erp , ndim_hT, ndex_hT ) ! freshwater flux damping 924 IF( ln_ssr ) zw2d(:,:) = erp(:,:) * tsn(:,:,1,jp_sal) * tmask(:,:,1) 925 CALL histwrite( nid_T, "sosafldp", it, zw2d , ndim_hT, ndex_hT ) ! salt flux damping 926 ENDIF 927 IF( ln_cpl .AND. nn_ice <= 1 ) THEN 928 CALL histwrite( nid_T, "sohefldp", it, qrp , ndim_hT, ndex_hT ) ! heat flux damping 929 CALL histwrite( nid_T, "sowafldp", it, erp , ndim_hT, ndex_hT ) ! freshwater flux damping 930 IF( ln_ssr ) zw2d(:,:) = erp(:,:) * tsn(:,:,1,jp_sal) * tmask(:,:,1) 917 zw2d(:,:) = erp(:,:) * tsn(:,:,1,jp_sal) * tmask(:,:,1) 931 918 CALL histwrite( nid_T, "sosafldp", it, zw2d , ndim_hT, ndex_hT ) ! salt flux damping 932 919 ENDIF -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/CANAL/MY_SRC/domvvl.F90
r10425 r11692 994 994 REWIND( numnam_ref ) ! Namelist nam_vvl in reference namelist : 995 995 READ ( numnam_ref, nam_vvl, IOSTAT = ios, ERR = 901) 996 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist' , lwp)996 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist' ) 997 997 REWIND( numnam_cfg ) ! Namelist nam_vvl in configuration namelist : Parameters of the run 998 998 READ ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 999 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' , lwp)999 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' ) 1000 1000 IF(lwm) WRITE ( numond, nam_vvl ) 1001 1001 ! -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/CANAL/MY_SRC/usrdef_nam.F90
r10074 r11692 58 58 CONTAINS 59 59 60 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )60 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 61 61 !!---------------------------------------------------------------------- 62 62 !! *** ROUTINE dom_nam *** … … 70 70 !! ** input : - namusr_def namelist found in namelist_cfg 71 71 !!---------------------------------------------------------------------- 72 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information73 72 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 74 73 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 76 75 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 77 76 ! 78 INTEGER :: ios , ii! Local integer79 REAL(wp):: zh ! Local scalars77 INTEGER :: ios ! Local integer 78 REAL(wp):: zh ! Local scalars 80 79 !! 81 80 NAMELIST/namusr_def/ rn_domszx, rn_domszy, rn_domszz, rn_dx, rn_dy, rn_dz, rn_0xratio, rn_0yratio & … … 85 84 !!---------------------------------------------------------------------- 86 85 ! 87 ii = 188 !89 86 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 90 87 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 91 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 88 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', cdtxt ) 89 ! 90 IF(lwm) WRITE( numond, namusr_def ) 92 91 ! 93 92 #if defined key_agrif … … 103 102 #endif 104 103 ! 105 WRITE( ldnam(:), namusr_def )104 IF(lwm) WRITE( numond, namusr_def ) 106 105 ! 107 106 cd_cfg = 'EW_CANAL' ! name & resolution (not used) … … 120 119 ! 121 120 zh = (kpk-1)*rn_dz 122 ! ! control print123 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1124 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1125 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1126 WRITE(ldtxt(ii),*) ' Namelist namusr_def : EW_CANAL test case' ; ii = ii + 1127 WRITE(ldtxt(ii),*) ' horizontal domain size-x rn_domszx = ', rn_domszx, ' km' ; ii = ii + 1128 WRITE(ldtxt(ii),*) ' horizontal domain size-y rn_domszy = ', rn_domszy, ' km' ; ii = ii + 1129 WRITE(ldtxt(ii),*) ' vertical domain size-z rn_domszz = ', rn_domszz, ' m' ; ii = ii + 1130 WRITE(ldtxt(ii),*) ' horizontal x-resolution rn_dx = ', rn_dx, ' km' ; ii = ii + 1131 WRITE(ldtxt(ii),*) ' horizontal y-resolution rn_dy = ', rn_dy, ' km' ; ii = ii + 1132 WRITE(ldtxt(ii),*) ' vertical resolution rn_dz = ', rn_dz, ' m' ; ii = ii + 1133 WRITE(ldtxt(ii),*) ' x-domain ratio of the 0 rn_0xratio = ', rn_0xratio ; ii = ii + 1134 WRITE(ldtxt(ii),*) ' y-domain ratio of the 0 rn_0yratio = ', rn_0yratio ; ii = ii + 1135 WRITE(ldtxt(ii),*) ' H [m] : ', zh ; ii = ii + 1136 WRITE(ldtxt(ii),*) ' F computation nn_fcase = ', nn_fcase ; ii = ii + 1137 WRITE(ldtxt(ii),*) ' Reference latitude rn_ppgphi0 = ', rn_ppgphi0 ; ii = ii + 1138 WRITE(ldtxt(ii),*) ' 10m wind speed rn_u10 = ', rn_u10, ' m/s' ; ii = ii + 1139 WRITE(ldtxt(ii),*) ' wind latitudinal extension rn_windszy = ', rn_windszy, ' km' ; ii = ii + 1140 WRITE(ldtxt(ii),*) ' wind longitudinal extension rn_windszx = ', rn_windszx, ' km' ; ii = ii + 1141 WRITE(ldtxt(ii),*) ' Uoce multiplicative factor rn_uofac = ', rn_uofac ; ii = ii + 1142 WRITE(ldtxt(ii),*) ' initial Canal max current rn_vtxmax = ', rn_vtxmax, ' m/s' ; ii = ii + 1143 WRITE(ldtxt(ii),*) ' initial zonal current rn_uzonal = ', rn_uzonal, ' m/s' ; ii = ii + 1144 WRITE(ldtxt(ii),*) ' Jet latitudinal extension rn_ujetszy = ', rn_ujetszy, ' km' ; ii = ii + 1145 WRITE(ldtxt(ii),*) ' Jet longitudinal extension rn_ujetszx = ', rn_ujetszx, ' km' ; ii = ii + 1146 WRITE(ldtxt(ii),*) ' bottom definition (0:flat) nn_botcase = ', nn_botcase ; ii = ii + 1147 WRITE(ldtxt(ii),*) ' initial condition case nn_initcase= ', nn_initcase ; ii = ii + 1148 WRITE(ldtxt(ii),*) ' (0:rest, 1:zonal current, 10:shear)' ; ii = ii + 1149 WRITE(ldtxt(ii),*) ' add random noise on initial ssh ln_sshnoise= ', ln_sshnoise ; ii = ii + 1150 WRITE(ldtxt(ii),*) ' Gaussian lambda parameter rn_lambda = ', rn_lambda ; ii = ii + 1151 !152 121 ! ! Set the lateral boundary condition of the global domain 153 122 kperio = 1 ! EW_CANAL configuration : closed basin 154 ! 155 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 156 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 157 WRITE(ldtxt(ii),*) ' EW_CANAL : closed basin jperio = ', kperio ; ii = ii + 1 123 ! ! control print 124 IF(lwp) THEN 125 WRITE(numout,*) ' ' 126 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 127 WRITE(numout,*) '~~~~~~~~~~~ ' 128 WRITE(numout,*) ' Namelist namusr_def : EW_CANAL test case' 129 WRITE(numout,*) ' horizontal domain size-x rn_domszx = ', rn_domszx, ' km' 130 WRITE(numout,*) ' horizontal domain size-y rn_domszy = ', rn_domszy, ' km' 131 WRITE(numout,*) ' vertical domain size-z rn_domszz = ', rn_domszz, ' m' 132 WRITE(numout,*) ' horizontal x-resolution rn_dx = ', rn_dx, ' km' 133 WRITE(numout,*) ' horizontal y-resolution rn_dy = ', rn_dy, ' km' 134 WRITE(numout,*) ' vertical resolution rn_dz = ', rn_dz, ' m' 135 WRITE(numout,*) ' x-domain ratio of the 0 rn_0xratio = ', rn_0xratio 136 WRITE(numout,*) ' y-domain ratio of the 0 rn_0yratio = ', rn_0yratio 137 WRITE(numout,*) ' H [m] : ', zh 138 WRITE(numout,*) ' F computation nn_fcase = ', nn_fcase 139 WRITE(numout,*) ' Reference latitude rn_ppgphi0 = ', rn_ppgphi0 140 WRITE(numout,*) ' 10m wind speed rn_u10 = ', rn_u10, ' m/s' 141 WRITE(numout,*) ' wind latitudinal extension rn_windszy = ', rn_windszy, ' km' 142 WRITE(numout,*) ' wind longitudinal extension rn_windszx = ', rn_windszx, ' km' 143 WRITE(numout,*) ' Uoce multiplicative factor rn_uofac = ', rn_uofac 144 WRITE(numout,*) ' initial Canal max current rn_vtxmax = ', rn_vtxmax, ' m/s' 145 WRITE(numout,*) ' initial zonal current rn_uzonal = ', rn_uzonal, ' m/s' 146 WRITE(numout,*) ' Jet latitudinal extension rn_ujetszy = ', rn_ujetszy, ' km' 147 WRITE(numout,*) ' Jet longitudinal extension rn_ujetszx = ', rn_ujetszx, ' km' 148 WRITE(numout,*) ' bottom definition (0:flat) nn_botcase = ', nn_botcase 149 WRITE(numout,*) ' initial condition case nn_initcase= ', nn_initcase 150 WRITE(numout,*) ' (0:rest, 1:zonal current, 10:shear)' 151 WRITE(numout,*) ' add random noise on initial ssh ln_sshnoise= ', ln_sshnoise 152 WRITE(numout,*) ' Gaussian lambda parameter rn_lambda = ', rn_lambda 153 WRITE(numout,*) ' ' 154 WRITE(numout,*) ' Lateral boundary condition of the global domain' 155 WRITE(numout,*) ' EW_CANAL : closed basin jperio = ', kperio 156 ENDIF 158 157 ! 159 158 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV1D/EXPREF/namelist_cfg
r10513 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV1D/EXPREF/namelist_cfg_120pts
r10513 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV1D/EXPREF/namelist_cfg_240pts
r10513 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV1D/EXPREF/namelist_cfg_60pts
r10513 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV1D/MY_SRC/usrdef_nam.F90
r10513 r11692 40 40 CONTAINS 41 41 42 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )42 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 43 43 !!---------------------------------------------------------------------- 44 44 !! *** ROUTINE dom_nam *** … … 52 52 !! ** input : - namusr_def namelist found in namelist_cfg 53 53 !!---------------------------------------------------------------------- 54 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information55 54 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 56 55 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 58 57 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 59 58 ! 60 INTEGER :: ios , ii! Local integer59 INTEGER :: ios ! Local integer 61 60 REAL(wp):: zlx, zly ! Local scalars 62 61 !! … … 64 63 !!---------------------------------------------------------------------- 65 64 ! 66 ii = 167 !68 65 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 69 66 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 70 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 71 68 ! 72 WRITE( ldnam(:), namusr_def )69 IF(lwm) WRITE( numond, namusr_def ) 73 70 ! 74 71 cd_cfg = 'ICE_ADV1D' ! name & resolution (not used) … … 82 79 zlx = kpi*rn_dx*1.e-3 83 80 zly = kpj*rn_dy*1.e-3 84 ! ! control print85 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 186 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 187 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 188 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE_ADV1D test case' ; ii = ii + 189 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 190 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' ; ii = ii + 191 WRITE(ldtxt(ii),*) ' ICE_ADV1D domain ' ; ii = ii + 192 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 193 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 194 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 195 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 196 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 197 WRITE(ldtxt(ii),*) ' Coriolis:', ln_corio ; ii = ii + 198 !99 81 ! ! Set the lateral boundary condition of the global domain 100 82 kperio = 0 ! ICE_ADV1D configuration : bi-periodic basin 101 ! 102 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 103 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 104 WRITE(ldtxt(ii),*) ' ICE_ADV1D : closed basin jperio = ', kperio ; ii = ii + 1 83 ! ! control print 84 IF(lwp) THEN 85 WRITE(numout,*) ' ' 86 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 87 WRITE(numout,*) '~~~~~~~~~~~ ' 88 WRITE(numout,*) ' Namelist namusr_def : ICE_ADV1D test case' 89 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 90 WRITE(numout,*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' 91 WRITE(numout,*) ' ICE_ADV1D domain ' 92 WRITE(numout,*) ' LX [km]: ', zlx 93 WRITE(numout,*) ' LY [km]: ', zly 94 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 95 WRITE(numout,*) ' jpjglo = ', kpj 96 WRITE(numout,*) ' jpkglo = ', kpk 97 WRITE(numout,*) ' Coriolis:', ln_corio 98 WRITE(numout,*) ' ' 99 WRITE(numout,*) ' Lateral boundary condition of the global domain' 100 WRITE(numout,*) ' ICE_ADV1D : closed basin jperio = ', kperio 101 ENDIF 105 102 ! 106 103 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV2D/EXPREF/namelist_cfg
r10520 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_ADV2D/MY_SRC/usrdef_nam.F90
r10515 r11692 40 40 CONTAINS 41 41 42 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )42 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 43 43 !!---------------------------------------------------------------------- 44 44 !! *** ROUTINE dom_nam *** … … 52 52 !! ** input : - namusr_def namelist found in namelist_cfg 53 53 !!---------------------------------------------------------------------- 54 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information55 54 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 56 55 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 58 57 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 59 58 ! 60 INTEGER :: ios , ii! Local integer59 INTEGER :: ios ! Local integer 61 60 REAL(wp):: zlx, zly ! Local scalars 62 61 !! … … 64 63 !!---------------------------------------------------------------------- 65 64 ! 66 ii = 167 !68 65 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 69 66 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 70 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 68 ! 69 IF(lwm) WRITE( numond, namusr_def ) 71 70 ! 72 71 #if defined key_agrif … … 79 78 #endif 80 79 ! 81 WRITE( ldnam(:), namusr_def )80 IF(lwm) WRITE( numond, namusr_def ) 82 81 ! 83 82 cd_cfg = 'ICE_ADV2D' ! name & resolution (not used) 84 kk_cfg = INT( rn_dx )83 kk_cfg = NINT( rn_dx ) 85 84 ! 86 ! Global Domain size: ICE_ADV2D domain is 300 km x 300 Km x 10 m 87 kpi = INT( 300.e3 / rn_dx ) -1 88 kpj = INT( 300.e3 / rn_dy ) -1 89 #if defined key_agrif 90 IF( .NOT. Agrif_Root() ) THEN 85 IF( Agrif_Root() ) THEN ! Global Domain size: ICE_AGRIF domain is 300 km x 300 Km x 10 m 86 kpi = NINT( 300.e3 / rn_dx ) - 1 87 kpj = NINT( 300.e3 / rn_dy ) - 1 88 ELSE 91 89 kpi = nbcellsx + 2 + 2*nbghostcells 92 90 kpj = nbcellsy + 2 + 2*nbghostcells 93 91 ENDIF 94 #endif95 92 kpk = 1 96 93 ! … … 99 96 zlx = kpi*rn_dx*1.e-3 100 97 zly = kpj*rn_dy*1.e-3 98 ! 99 IF( Agrif_Root() ) THEN ; kperio = 7 ! ICE_AGRIF configuration : bi-periodic basin 100 ELSE ; kperio = 0 ! closed periodicity for the zoom 101 ENDIF 101 102 ! ! control print 102 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 103 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1 104 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1 105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE_ADV2D test case' ; ii = ii + 1 106 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 1 107 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' ; ii = ii + 1 108 WRITE(ldtxt(ii),*) ' ICE_ADV2D domain = 300 km x 300Km x 1 grid-point ' ; ii = ii + 1 109 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 1 110 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 1 111 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 1 112 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 1 113 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 1 114 WRITE(ldtxt(ii),*) ' Coriolis:', ln_corio ; ii = ii + 1 115 ! 116 ! ! Set the lateral boundary condition of the global domain 117 kperio = 7 ! ICE_ADV2D configuration : bi-periodic basin 118 #if defined key_agrif 119 IF( .NOT. Agrif_Root() ) THEN 120 kperio = 0 103 IF(lwp) THEN 104 WRITE(numout,*) ' ' 105 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 106 WRITE(numout,*) '~~~~~~~~~~~ ' 107 WRITE(numout,*) ' Namelist namusr_def : ICE_ADV2D test case' 108 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 109 WRITE(numout,*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' 110 WRITE(numout,*) ' ICE_ADV2D domain = 300 km x 300Km x 1 grid-point ' 111 WRITE(numout,*) ' LX [km]: ', zlx 112 WRITE(numout,*) ' LY [km]: ', zly 113 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 114 WRITE(numout,*) ' jpjglo = ', kpj 115 WRITE(numout,*) ' jpkglo = ', kpk 116 WRITE(numout,*) ' Coriolis:', ln_corio 117 WRITE(numout,*) ' ' 118 WRITE(numout,*) ' Lateral boundary condition of the global domain' 119 WRITE(numout,*) ' ICE_ADV2D : bi-periodic basin jperio = ', kperio 121 120 ENDIF 122 #endif123 !124 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1125 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1126 WRITE(ldtxt(ii),*) ' ICE_ADV2D : bi-periodic basin jperio = ', kperio ; ii = ii + 1127 121 ! 128 122 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_AGRIF/EXPREF/1_namelist_cfg
r10516 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_AGRIF/EXPREF/namelist_cfg
r10516 r11692 201 201 !! namdiu Cool skin and warm layer models (default: OFF) 202 202 !! namdiu Cool skin and warm layer models (default: OFF) 203 !! namflo float parameters ( "key_float")204 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")205 !! nam dct transports through some sections ("key_diadct")203 !! namflo float parameters (default: OFF) 204 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 205 !! nam_diadct transports through some sections (default: OFF) 206 206 !! nam_diatmb Top Middle Bottom Output (default: OFF) 207 207 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ICE_AGRIF/MY_SRC/usrdef_nam.F90
r10516 r11692 40 40 CONTAINS 41 41 42 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )42 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 43 43 !!---------------------------------------------------------------------- 44 44 !! *** ROUTINE dom_nam *** … … 52 52 !! ** input : - namusr_def namelist found in namelist_cfg 53 53 !!---------------------------------------------------------------------- 54 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information55 54 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 56 55 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 58 57 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 59 58 ! 60 INTEGER :: ios , ii! Local integer59 INTEGER :: ios ! Local integer 61 60 REAL(wp):: zlx, zly ! Local scalars 62 61 !! … … 64 63 !!---------------------------------------------------------------------- 65 64 ! 66 ii = 167 !68 65 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 69 66 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 70 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 68 ! 69 IF(lwm) WRITE( numond, namusr_def ) 71 70 ! 72 71 #if defined key_agrif … … 79 78 #endif 80 79 ! 81 WRITE( ldnam(:), namusr_def )80 IF(lwm) WRITE( numond, namusr_def ) 82 81 ! 83 82 cd_cfg = 'ICE_AGRIF' ! name & resolution (not used) 84 kk_cfg = INT( rn_dx )83 kk_cfg = NINT( rn_dx ) 85 84 ! 86 ! Global Domain size: ICE_AGRIF domain is 300 km x 300 Km x 10 m 87 kpi = INT( 300.e3 / rn_dx ) -1 88 kpj = INT( 300.e3 / rn_dy ) -1 89 #if defined key_agrif 90 IF( .NOT. Agrif_Root() ) THEN 85 IF( Agrif_Root() ) THEN ! Global Domain size: ICE_AGRIF domain is 300 km x 300 Km x 10 m 86 kpi = NINT( 300.e3 / rn_dx ) - 1 87 kpj = NINT( 300.e3 / rn_dy ) - 1 88 ELSE 91 89 kpi = nbcellsx + 2 + 2*nbghostcells 92 90 kpj = nbcellsy + 2 + 2*nbghostcells 93 91 ENDIF 94 #endif95 92 kpk = 1 96 93 ! … … 99 96 zlx = kpi*rn_dx*1.e-3 100 97 zly = kpj*rn_dy*1.e-3 98 ! 99 IF( Agrif_Root() ) THEN ; kperio = 7 ! ICE_AGRIF configuration : bi-periodic basin 100 ELSE ; kperio = 0 ! closed periodicity for the zoom 101 ENDIF 101 102 ! ! control print 102 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 103 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1 104 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1 105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ICE_AGRIF test case' ; ii = ii + 1 106 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 1 107 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' ; ii = ii + 1 108 WRITE(ldtxt(ii),*) ' ICE_AGRIF domain = 300 km x 300Km x 1 grid-point ' ; ii = ii + 1 109 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 1 110 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 1 111 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 1 112 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 1 113 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 1 114 WRITE(ldtxt(ii),*) ' Coriolis:', ln_corio ; ii = ii + 1 115 ! 116 ! ! Set the lateral boundary condition of the global domain 117 kperio = 7 ! ICE_AGRIF configuration : bi-periodic basin 118 #if defined key_agrif 119 IF( .NOT. Agrif_Root() ) THEN 120 kperio = 0 103 IF(lwp) THEN 104 WRITE(numout,*) ' ' 105 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 106 WRITE(numout,*) '~~~~~~~~~~~ ' 107 WRITE(numout,*) ' Namelist namusr_def : ICE_AGRIF test case' 108 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 109 WRITE(numout,*) ' horizontal resolution rn_dy = ', rn_dy, ' meters' 110 WRITE(numout,*) ' ICE_AGRIF domain = 300 km x 300Km x 1 grid-point ' 111 WRITE(numout,*) ' LX [km]: ', zlx 112 WRITE(numout,*) ' LY [km]: ', zly 113 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 114 WRITE(numout,*) ' jpjglo = ', kpj 115 WRITE(numout,*) ' jpkglo = ', kpk 116 WRITE(numout,*) ' Coriolis:', ln_corio 117 WRITE(numout,*) ' ' 118 WRITE(numout,*) ' Lateral boundary condition of the global domain' 119 WRITE(numout,*) ' ICE_AGRIF : bi-periodic basin jperio = ', kperio 121 120 ENDIF 122 #endif123 !124 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1125 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1126 WRITE(ldtxt(ii),*) ' ICE_AGRIF : bi-periodic basin jperio = ', kperio ; ii = ii + 1127 121 ! 128 122 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ISOMIP/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ISOMIP/EXPREF/namelist_cfg
r10075 r11692 78 78 ! ! ! (if <0 months) ! name ! (logical) ! (T/F) ! 'monthly' ! filename ! pairing ! filename ! 79 79 ! nn_isf == 4 80 sn_fwfisf = 'rnfisf' , -12 80 sn_fwfisf = 'rnfisf' , -12. ,'sowflisf', .false. , .true. , 'yearly' , '' , '' , '' 81 81 ! nn_isf == 3 82 sn_rnfisf = 'rnfisf' , -12 82 sn_rnfisf = 'rnfisf' , -12. ,'sofwfisf', .false. , .true. , 'yearly' , '' , '' , '' 83 83 ! nn_isf == 2 and 3 84 sn_depmax_isf = 'rnfisf' , -12 85 sn_depmin_isf = 'rnfisf' , -12 84 sn_depmax_isf = 'rnfisf' , -12. ,'sozisfmax' , .false. , .true. , 'yearly' , '' , '' , '' 85 sn_depmin_isf = 'rnfisf' , -12. ,'sozisfmin' , .false. , .true. , 'yearly' , '' , '' , '' 86 86 ! nn_isf == 2 87 sn_Leff_isf = 'rnfisf' , -12 87 sn_Leff_isf = 'rnfisf' , -12. ,'Leff' , .false. , .true. , 'yearly' , '' , '' , '' 88 88 ! for all case 89 89 nn_isf = 1 ! ice shelf melting/freezing … … 272 272 !! namdiu Cool skin and warm layer models (default: OFF) 273 273 !! namdiu Cool skin and warm layer models (default: OFF) 274 !! namflo float parameters ( "key_float")275 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")276 !! nam dct transports through some sections ("key_diadct")274 !! namflo float parameters (default: OFF) 275 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 276 !! nam_diadct transports through some sections (default: OFF) 277 277 !! nam_diatmb Top Middle Bottom Output (default: OFF) 278 278 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/ISOMIP/MY_SRC/usrdef_nam.F90
r10074 r11692 42 42 CONTAINS 43 43 44 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )44 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 45 45 !!---------------------------------------------------------------------- 46 46 !! *** ROUTINE dom_nam *** … … 54 54 !! ** input : - namusr_def namelist found in namelist_cfg 55 55 !!---------------------------------------------------------------------- 56 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information57 56 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 58 57 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 60 59 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 61 60 ! 62 INTEGER :: ios , ii! Local integer61 INTEGER :: ios ! Local integer 63 62 !! 64 63 NAMELIST/namusr_def/ ln_zco, ln_zps, ln_sco, rn_e1deg, rn_e2deg, rn_e3 65 64 !!---------------------------------------------------------------------- 66 65 ! 67 ii = 168 !69 66 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 70 67 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 71 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)68 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 72 69 ! 73 WRITE( ldnam(:), namusr_def )70 IF(lwm) WRITE( numond, namusr_def ) 74 71 ! 75 72 cd_cfg = 'ISOMIP' ! name & resolution (not used) … … 81 78 kpk = INT( rbathy / rn_e3 ) + 1 ! add 1 for t-point in the seafloor 82 79 ! 83 ! ! control print84 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 185 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 186 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 187 WRITE(ldtxt(ii),*) ' Namelist namusr_def : ISOMIP test case' ; ii = ii + 188 WRITE(ldtxt(ii),*) ' type of vertical coordinate : ' ; ii = ii + 189 WRITE(ldtxt(ii),*) ' z-coordinate flag ln_zco = ', ln_zco ; ii = ii + 190 WRITE(ldtxt(ii),*) ' z-partial-step coordinate flag ln_zps = ', ln_zps ; ii = ii + 191 WRITE(ldtxt(ii),*) ' s-coordinate flag ln_sco = ', ln_sco ; ii = ii + 192 WRITE(ldtxt(ii),*) ' resolution' ; ii = ii + 193 WRITE(ldtxt(ii),*) ' zonal resolution rn_e1deg = ', rn_e1deg, ' degrees' ; ii = ii + 194 WRITE(ldtxt(ii),*) ' meridional resolution rn_e1deg = ', rn_e1deg, ' degrees' ; ii = ii + 195 WRITE(ldtxt(ii),*) ' vertical resolution rn_e3 = ', rn_e3 , ' meters' ; ii = ii + 196 WRITE(ldtxt(ii),*) ' ISOMIP domain = 15° x 10° x 900 m' ; ii = ii + 197 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 198 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 199 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 1100 !101 !102 80 ! ! Set the lateral boundary condition of the global domain 103 81 kperio = 0 ! ISOMIP configuration : close basin 104 82 ! 105 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 106 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 107 WRITE(ldtxt(ii),*) ' ISOMIP : closed basin jperio = ', kperio ; ii = ii + 1 83 ! ! control print 84 IF(lwp) THEN 85 WRITE(numout,*) ' ' 86 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 87 WRITE(numout,*) '~~~~~~~~~~~ ' 88 WRITE(numout,*) ' Namelist namusr_def : ISOMIP test case' 89 WRITE(numout,*) ' type of vertical coordinate : ' 90 WRITE(numout,*) ' z-coordinate flag ln_zco = ', ln_zco 91 WRITE(numout,*) ' z-partial-step coordinate flag ln_zps = ', ln_zps 92 WRITE(numout,*) ' s-coordinate flag ln_sco = ', ln_sco 93 WRITE(numout,*) ' resolution' 94 WRITE(numout,*) ' zonal resolution rn_e1deg = ', rn_e1deg, ' degrees' 95 WRITE(numout,*) ' meridional resolution rn_e1deg = ', rn_e1deg, ' degrees' 96 WRITE(numout,*) ' vertical resolution rn_e3 = ', rn_e3 , ' meters' 97 WRITE(numout,*) ' ISOMIP domain = 15° x 10° x 900 m' 98 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 99 WRITE(numout,*) ' jpjglo = ', kpj 100 WRITE(numout,*) ' jpkglo = ', kpk 101 WRITE(numout,*) ' ' 102 WRITE(numout,*) ' Lateral boundary condition of the global domain' 103 WRITE(numout,*) ' ISOMIP : closed basin jperio = ', kperio 104 ENDIF 108 105 ! 109 106 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/LOCK_EXCHANGE/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_ubs_cfg
r10075 r11692 277 277 !! namdiu Cool skin and warm layer models (default: OFF) 278 278 !! namdiu Cool skin and warm layer models (default: OFF) 279 !! namflo float parameters ( "key_float")280 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")281 !! nam dct transports through some sections ("key_diadct")279 !! namflo float parameters (default: OFF) 280 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 281 !! nam_diadct transports through some sections (default: OFF) 282 282 !! nam_diatmb Top Middle Bottom Output (default: OFF) 283 283 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/LOCK_EXCHANGE/MY_SRC/usrdef_nam.F90
r10074 r11692 38 38 CONTAINS 39 39 40 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )40 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 41 41 !!---------------------------------------------------------------------- 42 42 !! *** ROUTINE dom_nam *** … … 50 50 !! ** input : - namusr_def namelist found in namelist_cfg 51 51 !!---------------------------------------------------------------------- 52 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information53 52 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 54 53 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 56 55 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 57 56 ! 58 INTEGER :: ios , ii! Local integer57 INTEGER :: ios ! Local integer 59 58 !! 60 59 NAMELIST/namusr_def/ rn_dx, rn_dz 61 60 !!---------------------------------------------------------------------- 62 61 ! 63 ii = 164 !65 62 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 66 63 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)64 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 68 65 ! 69 WRITE( ldnam(:), namusr_def )66 IF(lwm) WRITE( numond, namusr_def ) 70 67 ! 71 68 ! … … 77 74 kpj = 3 78 75 kpk = INT( 20. / rn_dz ) + 1 79 !80 ! ! control print81 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 182 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 183 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 184 WRITE(ldtxt(ii),*) ' Namelist namusr_def : LOCK_EXCHANGE test case' ; ii = ii + 185 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 186 WRITE(ldtxt(ii),*) ' vertical resolution rn_dz = ', rn_dz, ' meters' ; ii = ii + 187 WRITE(ldtxt(ii),*) ' LOCK_EXCHANGE domain = 64 km x 3 grid-points x 20 m' ; ii = ii + 188 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 189 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 190 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 191 !92 76 ! ! Set the lateral boundary condition of the global domain 93 77 kperio = 0 ! LOCK_EXCHANGE configuration : closed domain 94 78 ! 95 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 96 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 97 WRITE(ldtxt(ii),*) ' closed jperio = ', kperio ; ii = ii + 1 79 ! ! control print 80 IF(lwp) THEN 81 WRITE(numout,*) ' ' 82 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 83 WRITE(numout,*) '~~~~~~~~~~~ ' 84 WRITE(numout,*) ' Namelist namusr_def : LOCK_EXCHANGE test case' 85 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 86 WRITE(numout,*) ' vertical resolution rn_dz = ', rn_dz, ' meters' 87 WRITE(numout,*) ' LOCK_EXCHANGE domain = 64 km x 3 grid-points x 20 m' 88 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 89 WRITE(numout,*) ' jpjglo = ', kpj 90 WRITE(numout,*) ' jpkglo = ', kpk 91 WRITE(numout,*) ' ' 92 WRITE(numout,*) ' Lateral boundary condition of the global domain' 93 WRITE(numout,*) ' closed jperio = ', kperio 94 ENDIF 98 95 ! 99 96 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/OVERFLOW/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/OVERFLOW/EXPREF/namelist_zps_FCT4_flux_ubs_cfg
r10075 r11692 291 291 !! namdiu Cool skin and warm layer models (default: OFF) 292 292 !! namdiu Cool skin and warm layer models (default: OFF) 293 !! namflo float parameters ( "key_float")294 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")295 !! nam dct transports through some sections ("key_diadct")293 !! namflo float parameters (default: OFF) 294 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 295 !! nam_diadct transports through some sections (default: OFF) 296 296 !! nam_diatmb Top Middle Bottom Output (default: OFF) 297 297 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/OVERFLOW/MY_SRC/usrdef_nam.F90
r10074 r11692 39 39 CONTAINS 40 40 41 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )41 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 42 42 !!---------------------------------------------------------------------- 43 43 !! *** ROUTINE dom_nam *** … … 51 51 !! ** input : - namusr_def namelist found in namelist_cfg 52 52 !!---------------------------------------------------------------------- 53 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information54 53 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 55 54 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 57 56 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 58 57 ! 59 INTEGER :: ios , ii! Local integer58 INTEGER :: ios ! Local integer 60 59 !! 61 60 NAMELIST/namusr_def/ ln_zco, ln_zps, ln_sco, rn_dx, rn_dz 62 61 !!---------------------------------------------------------------------- 63 62 ! 64 ii = 165 !66 63 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 67 64 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 68 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)65 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 69 66 ! 70 WRITE( ldnam(:), namusr_def )67 IF(lwm) WRITE( numond, namusr_def ) 71 68 ! 72 69 cd_cfg = 'OVERFLOW' ! name & resolution (not used) … … 79 76 ! 80 77 ! ! control print 81 WRITE( ldtxt(ii),*) ' ' ; ii = ii + 182 WRITE( ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 183 WRITE( ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 184 WRITE( ldtxt(ii),*) ' Namelist namusr_def : OVERFLOW test case' ; ii = ii + 185 WRITE( ldtxt(ii),*) ' type of vertical coordinate : ' ; ii = ii + 186 WRITE( ldtxt(ii),*) ' z-coordinate flag ln_zco = ', ln_zco ; ii = ii + 187 WRITE( ldtxt(ii),*) ' z-partial-step coordinate flag ln_zps = ', ln_zps ; ii = ii + 188 WRITE( ldtxt(ii),*) ' s-coordinate flag ln_sco = ', ln_sco ; ii = ii + 189 WRITE( ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 190 WRITE( ldtxt(ii),*) ' vertical resolution rn_dz = ', rn_dz, ' meters' ; ii = ii + 191 WRITE( ldtxt(ii),*) ' OVERFLOW domain = 200 km x 3 grid-points x 2000 m' ; ii = ii + 192 WRITE( ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 193 WRITE( ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 194 WRITE( ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 178 WRITE(numout,*) ' ' 79 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 80 WRITE(numout,*) '~~~~~~~~~~~ ' 81 WRITE(numout,*) ' Namelist namusr_def : OVERFLOW test case' 82 WRITE(numout,*) ' type of vertical coordinate : ' 83 WRITE(numout,*) ' z-coordinate flag ln_zco = ', ln_zco 84 WRITE(numout,*) ' z-partial-step coordinate flag ln_zps = ', ln_zps 85 WRITE(numout,*) ' s-coordinate flag ln_sco = ', ln_sco 86 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 87 WRITE(numout,*) ' vertical resolution rn_dz = ', rn_dz, ' meters' 88 WRITE(numout,*) ' OVERFLOW domain = 200 km x 3 grid-points x 2000 m' 89 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 90 WRITE(numout,*) ' jpjglo = ', kpj 91 WRITE(numout,*) ' jpkglo = ', kpk 95 92 ! 96 93 ! ! Set the lateral boundary condition of the global domain 97 94 kperio = 0 ! OVERFLOW configuration : close basin 98 95 ! 99 WRITE( ldtxt(ii),*) ' ' ; ii = ii + 1100 WRITE( ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1101 WRITE( ldtxt(ii),*) ' OVERFLOW : closed basin jperio = ', kperio ; ii = ii + 196 WRITE(numout,*) ' ' 97 WRITE(numout,*) ' Lateral boundary condition of the global domain' 98 WRITE(numout,*) ' OVERFLOW : closed basin jperio = ', kperio 102 99 ! 103 100 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/VORTEX/EXPREF/1_namelist_cfg
r10075 r11692 272 272 !! namdiu Cool skin and warm layer models (default: OFF) 273 273 !! namdiu Cool skin and warm layer models (default: OFF) 274 !! namflo float parameters ( "key_float")275 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")276 !! nam dct transports through some sections ("key_diadct")274 !! namflo float parameters (default: OFF) 275 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 276 !! nam_diadct transports through some sections (default: OFF) 277 277 !! nam_diatmb Top Middle Bottom Output (default: OFF) 278 278 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/VORTEX/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/VORTEX/EXPREF/namelist_cfg
r10075 r11692 263 263 !! namdiu Cool skin and warm layer models (default: OFF) 264 264 !! namdiu Cool skin and warm layer models (default: OFF) 265 !! namflo float parameters ( "key_float")266 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")267 !! nam dct transports through some sections ("key_diadct")265 !! namflo float parameters (default: OFF) 266 !! nam_diaharm Harmonic analysis of tidal constituents (default; OFF) 267 !! nam_diadct transports through some sections (default: OFF) 268 268 !! nam_diatmb Top Middle Bottom Output (default: OFF) 269 269 !! nam_dia25h 25h Mean Output (default: OFF) -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/VORTEX/MY_SRC/domvvl.F90
r10572 r11692 994 994 REWIND( numnam_ref ) ! Namelist nam_vvl in reference namelist : 995 995 READ ( numnam_ref, nam_vvl, IOSTAT = ios, ERR = 901) 996 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist' , lwp)996 901 IF( ios /= 0 ) CALL ctl_nam ( ios , 'nam_vvl in reference namelist' ) 997 997 REWIND( numnam_cfg ) ! Namelist nam_vvl in configuration namelist : Parameters of the run 998 998 READ ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 999 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' , lwp)999 902 IF( ios > 0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' ) 1000 1000 IF(lwm) WRITE ( numond, nam_vvl ) 1001 1001 ! -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/VORTEX/MY_SRC/usrdef_nam.F90
r10074 r11692 40 40 CONTAINS 41 41 42 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )42 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 43 43 !!---------------------------------------------------------------------- 44 44 !! *** ROUTINE dom_nam *** … … 52 52 !! ** input : - namusr_def namelist found in namelist_cfg 53 53 !!---------------------------------------------------------------------- 54 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information55 54 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 56 55 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 58 57 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 59 58 ! 60 INTEGER :: ios , ii! Local integer59 INTEGER :: ios ! Local integer 61 60 REAL(wp):: zlx, zly, zh ! Local scalars 62 61 !! … … 64 63 !!---------------------------------------------------------------------- 65 64 ! 66 ii = 167 !68 65 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 69 66 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 70 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)67 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 71 68 ! 72 69 #if defined key_agrif … … 80 77 #endif 81 78 ! 82 WRITE( ldnam(:), namusr_def )79 IF(lwm) WRITE( numond, namusr_def ) 83 80 ! 84 81 cd_cfg = 'VORTEX' ! name & resolution (not used) 85 kk_cfg = INT( rn_dx )82 kk_cfg = nINT( rn_dx ) 86 83 ! 87 ! Global Domain size: VORTEX global domain is 1800 km x 1800 Km x 5000 m 88 kpi = INT( 1800.e3 / rn_dx ) + 3 89 kpj = INT( 1800.e3 / rn_dy ) + 3 90 kpk = INT( 5000._wp / rn_dz ) + 1 91 #if defined key_agrif 92 IF( .NOT. Agrif_Root() ) THEN 84 IF( Agrif_Root() ) THEN ! Global Domain size: VORTEX global domain is 1800 km x 1800 Km x 5000 m 85 kpi = NINT( 1800.e3 / rn_dx ) + 3 86 kpj = NINT( 1800.e3 / rn_dy ) + 3 87 ELSE 93 88 kpi = nbcellsx + 2 + 2*nbghostcells 94 89 kpj = nbcellsy + 2 + 2*nbghostcells 95 90 ENDIF 96 #endif 91 kpk = NINT( 5000._wp / rn_dz ) + 1 97 92 ! 98 93 zlx = (kpi-2)*rn_dx*1.e-3 99 94 zly = (kpj-2)*rn_dy*1.e-3 100 95 zh = (kpk-1)*rn_dz 101 ! ! control print102 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1103 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 1104 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 1105 WRITE(ldtxt(ii),*) ' Namelist namusr_def : VORTEX test case' ; ii = ii + 1106 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' m' ; ii = ii + 1107 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dy = ', rn_dy, ' m' ; ii = ii + 1108 WRITE(ldtxt(ii),*) ' vertical resolution rn_dz = ', rn_dz, ' m' ; ii = ii + 1109 WRITE(ldtxt(ii),*) ' VORTEX domain: ' ; ii = ii + 1110 WRITE(ldtxt(ii),*) ' LX [km]: ', zlx ; ii = ii + 1111 WRITE(ldtxt(ii),*) ' LY [km]: ', zly ; ii = ii + 1112 WRITE(ldtxt(ii),*) ' H [m] : ', zh ; ii = ii + 1113 WRITE(ldtxt(ii),*) ' Reference latitude rn_ppgphi0 = ', rn_ppgphi0 ; ii = ii + 1114 !115 96 ! ! Set the lateral boundary condition of the global domain 116 97 kperio = 0 ! VORTEX configuration : closed basin 117 ! 118 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 119 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 120 WRITE(ldtxt(ii),*) ' VORTEX : closed basin jperio = ', kperio ; ii = ii + 1 98 ! ! control print 99 IF(lwp) THEN 100 WRITE(numout,*) ' ' 101 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 102 WRITE(numout,*) '~~~~~~~~~~~ ' 103 WRITE(numout,*) ' Namelist namusr_def : VORTEX test case' 104 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' m' 105 WRITE(numout,*) ' horizontal resolution rn_dy = ', rn_dy, ' m' 106 WRITE(numout,*) ' vertical resolution rn_dz = ', rn_dz, ' m' 107 WRITE(numout,*) ' VORTEX domain: ' 108 WRITE(numout,*) ' LX [km]: ', zlx 109 WRITE(numout,*) ' LY [km]: ', zly 110 WRITE(numout,*) ' H [m] : ', zh 111 WRITE(numout,*) ' Reference latitude rn_ppgphi0 = ', rn_ppgphi0 112 WRITE(numout,*) ' ' 113 WRITE(numout,*) ' Lateral boundary condition of the global domain' 114 WRITE(numout,*) ' VORTEX : closed basin jperio = ', kperio 115 ENDIF 121 116 ! 122 117 END SUBROUTINE usr_def_nam -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/WAD/EXPREF/context_nemo.xml
r9930 r11692 6 6 <context id="nemo"> 7 7 <!-- $id$ --> 8 <variable_definition> 9 <!-- Year of time origin for NetCDF files; defaults to 1800 --> 10 <variable id="ref_year" type="int" > 1800 </variable> 11 <variable id="rau0" type="float" > 1026.0 </variable> 12 <variable id="cpocean" type="float" > 3991.86795711963 </variable> 13 <variable id="convSpsu" type="float" > 0.99530670233846 </variable> 14 <variable id="rhoic" type="float" > 917.0 </variable> 15 <variable id="rhosn" type="float" > 330.0 </variable> 16 <variable id="missval" type="float" > 1.e20 </variable> 17 </variable_definition> 8 18 <!-- Fields definition --> 9 19 <field_definition src="./field_def_nemo-oce.xml"/> <!-- NEMO ocean dynamics --> … … 18 28 19 29 <axis_definition> 20 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" />21 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" />22 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" />23 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" />24 <axis id="nfloat" long_name="Float number" unit="-" />25 <axis id="icbcla" long_name="Iceberg class" unit="1"/>26 <axis id="ncatice" long_name="Ice category" unit="1"/>27 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC"/>28 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC"/>30 <axis id="deptht" long_name="Vertical T levels" unit="m" positive="down" /> 31 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> 32 <axis id="depthv" long_name="Vertical V levels" unit="m" positive="down" /> 33 <axis id="depthw" long_name="Vertical W levels" unit="m" positive="down" /> 34 <axis id="nfloat" long_name="Float number" unit="-" /> 35 <axis id="icbcla" long_name="Iceberg class" unit="1" /> 36 <axis id="ncatice" long_name="Ice category" unit="1" /> 37 <axis id="iax_20C" long_name="20 degC isotherm" unit="degC" /> 38 <axis id="iax_28C" long_name="28 degC isotherm" unit="degC" /> 29 39 </axis_definition> 30 40 -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/WAD/EXPREF/namelist_cfg
r10075 r11692 180 180 &nambdy_dta ! open boundaries - external data 181 181 !----------------------------------------------------------------------- 182 ln_zinterp = .false. ! T if a vertical interpolation is required. Variables gdep[tuv] and e3[tuv] must exist in the file 183 ! ! automatically defined to T if the number of vertical levels in bdy dta /= jpk 184 ln_full_vel = .false. ! T if [uv]3d are "full" velocities and not only its baroclinic components 185 ! ! in this case, baroclinic and barotropic velocities will be recomputed -> [uv]2d not needed 186 ! 187 cn_dir = './' 182 188 ! ! file name ! frequency (hours) ! variable ! time interp. ! clim ! 'yearly'/ ! weights ! rotation ! land/sea mask ! 183 189 ! ! ! (if <0 months) ! name ! (logical) ! (T/F ) ! 'monthly' ! filename ! pairing ! filename ! 184 bn_ssh = 'bdyssh_tc7' , 1 , 'sshbdy', .true. , .true. , 'daily' , '' , '' , '' 185 bn_u2d = 'bdyuv_tc7' , 1 , 'ubdy' , .true. , .true. , 'daily' , '' , '' , '' 186 bn_v2d = 'bdyuv_tc7' , 1 , 'vbdy' , .true. , .true. , 'daily' , '' , '' , '' 187 cn_dir = './' ! root directory for the location of the bulk files 188 ln_full_vel = .false. ! 190 bn_ssh = 'bdyssh_tc7' , 1. , 'sshbdy', .true. , .true. , 'daily' , '' , '' , '' 191 bn_u2d = 'bdyuv_tc7' , 1. , 'ubdy' , .true. , .true. , 'daily' , '' , '' , '' 192 bn_v2d = 'bdyuv_tc7' , 1. , 'vbdy' , .true. , .true. , 'daily' , '' , '' , '' 189 193 / 190 194 !----------------------------------------------------------------------- … … 417 421 !! namdiu Cool skin and warm layer models (default: OFF) 418 422 !! namdiu Cool skin and warm layer models (default: OFF) 419 !! namflo float parameters ( "key_float")420 !! nam_diaharm Harmonic analysis of tidal constituents ( "key_diaharm")421 !! nam dct transports through some sections ("key_diadct")423 !! namflo float parameters (default: OFF) 424 !! nam_diaharm Harmonic analysis of tidal constituents (default: OFF) 425 !! nam_diadct transports through some sections (default: OFF) 422 426 !! nam_diatmb Top Middle Bottom Output (default: OFF) 423 427 !! nam_dia25h 25h Mean Output (default: OFF) … … 439 443 / 440 444 !----------------------------------------------------------------------- 441 &namdct ! transports through some sections ("key_diadct") 442 !----------------------------------------------------------------------- 445 &nam_diadct ! transports through some sections (default: OFF) 446 !----------------------------------------------------------------------- 447 ln_diadct = .false. ! Calculate transport thru sections or not 443 448 nn_dct = 60 ! time step frequency for transports computing 444 449 nn_dctwri = 60 ! time step frequency for transports writing -
NEMO/branches/2019/dev_r11514_HPC-02_single-core-extrahalo/tests/WAD/MY_SRC/usrdef_nam.F90
r10074 r11692 39 39 CONTAINS 40 40 41 SUBROUTINE usr_def_nam( ldtxt, ldnam,cd_cfg, kk_cfg, kpi, kpj, kpk, kperio )41 SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 42 42 !!---------------------------------------------------------------------- 43 43 !! *** ROUTINE dom_nam *** … … 51 51 !! ** input : - namusr_def namelist found in namelist_cfg 52 52 !!---------------------------------------------------------------------- 53 CHARACTER(len=*), DIMENSION(:), INTENT(out) :: ldtxt, ldnam ! stored print information54 53 CHARACTER(len=*) , INTENT(out) :: cd_cfg ! configuration name 55 54 INTEGER , INTENT(out) :: kk_cfg ! configuration resolution … … 57 56 INTEGER , INTENT(out) :: kperio ! lateral global domain b.c. 58 57 ! 59 INTEGER :: ios , ii! Local integer58 INTEGER :: ios ! Local integer 60 59 !! 61 60 NAMELIST/namusr_def/ rn_dx, rn_dz, nn_wad_test 62 61 !!---------------------------------------------------------------------- 63 62 ! 64 ii = 165 !66 63 REWIND( numnam_cfg ) ! Namelist namusr_def (exist in namelist_cfg only) 67 64 READ ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 68 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' , .TRUE.)65 902 IF( ios /= 0 ) CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 69 66 ! 70 WRITE( ldnam(:), namusr_def )67 IF(lwm) WRITE( numond, namusr_def ) 71 68 ! 72 69 ! … … 79 76 kpj = INT( 32.e3 / rn_dx ) + 2 80 77 kpk = INT( 10. / rn_dz ) + 1 81 !82 ! ! control print83 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 184 WRITE(ldtxt(ii),*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' ; ii = ii + 185 WRITE(ldtxt(ii),*) '~~~~~~~~~~~ ' ; ii = ii + 186 WRITE(ldtxt(ii),*) ' Namelist namusr_def : WAD_TEST_CASES test case' ; ii = ii + 187 WRITE(ldtxt(ii),*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' ; ii = ii + 188 WRITE(ldtxt(ii),*) ' vertical resolution rn_dz = ', rn_dz, ' meters' ; ii = ii + 189 WRITE(ldtxt(ii),*) ' WAD_TEST_CASES domain = 52 km x 34 km x 10 m' ; ii = ii + 190 WRITE(ldtxt(ii),*) ' resulting global domain size : jpiglo = ', kpi ; ii = ii + 191 WRITE(ldtxt(ii),*) ' jpjglo = ', kpj ; ii = ii + 192 WRITE(ldtxt(ii),*) ' jpkglo = ', kpk ; ii = ii + 193 !94 78 ! ! Set the lateral boundary condition of the global domain 95 79 kperio = 0 ! WAD_TEST_CASES configuration : closed domain 96 80 IF( nn_wad_test == 8 ) kperio = 7 ! North-South cyclic test 97 81 ! 98 WRITE(ldtxt(ii),*) ' ' ; ii = ii + 1 99 WRITE(ldtxt(ii),*) ' Lateral boundary condition of the global domain' ; ii = ii + 1 100 WRITE(ldtxt(ii),*) ' closed jperio = ', kperio ; ii = ii + 1 82 ! ! control print 83 IF(lwp) THEN 84 WRITE(numout,*) ' ' 85 WRITE(numout,*) 'usr_def_nam : read the user defined namelist (namusr_def) in namelist_cfg' 86 WRITE(numout,*) '~~~~~~~~~~~ ' 87 WRITE(numout,*) ' Namelist namusr_def : WAD_TEST_CASES test case' 88 WRITE(numout,*) ' horizontal resolution rn_dx = ', rn_dx, ' meters' 89 WRITE(numout,*) ' vertical resolution rn_dz = ', rn_dz, ' meters' 90 WRITE(numout,*) ' WAD_TEST_CASES domain = 52 km x 34 km x 10 m' 91 WRITE(numout,*) ' resulting global domain size : jpiglo = ', kpi 92 WRITE(numout,*) ' jpjglo = ', kpj 93 WRITE(numout,*) ' jpkglo = ', kpk 94 WRITE(numout,*) ' ' 95 WRITE(numout,*) ' Lateral boundary condition of the global domain' 96 WRITE(numout,*) ' closed jperio = ', kperio 97 ENDIF 101 98 ! 102 99 END SUBROUTINE usr_def_nam
Note: See TracChangeset
for help on using the changeset viewer.