Ignore:
Timestamp:
2019-10-29T18:14:49+01:00 (21 months ago)
Author:
laurent
Message:

Update the branch to r11830 of the trunk!

Location:
NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests
Files:
2 deleted
52 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/best_jpni_jpnj_eorca025

    r9856 r11831  
    624624    nb_cores 36180 ( 180 x 201 ), nb_points 80 ( 10 x 8 ) 
    625625    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_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/best_jpni_jpnj_eorca12

    r9856 r11831  
    13001300    nb_cores 49852 ( 206 x 242 ), nb_points 345 ( 23 x 15 ) 
    13011301    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_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/namelist_cfg_orca025_like

    r10539 r11831  
    99   nn_it000    =       1   !  first time step 
    1010   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) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/namelist_cfg_orca12_like

    r10539 r11831  
    99   nn_it000    =       1   !  first time step 
    1010   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) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/namelist_cfg_orca1_like

    r10539 r11831  
    99   nn_it000    =       1   !  first time step 
    1010   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) 
    1313/ 
    1414!----------------------------------------------------------------------- 
     
    3030&namctl        !   Control prints                                       (default: OFF) 
    3131!----------------------------------------------------------------------- 
    32    ln_ctl      = .false.   !  trends control print (expensive!) 
    3332   nn_print    =    0      !  level of print (0 no extra print) 
    3433   ln_timing   = .false.   !  timing by routine write out in timing.output file 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/namelist_ice_cfg

    r10179 r11831  
    7474&namini         !   Ice initialization 
    7575!------------------------------------------------------------------------------ 
     76   rn_thres_sst     =   0.5           !  max delta temp. above Tfreeze with initial ice = (sst - tfreeze) 
    7677/ 
    7778!------------------------------------------------------------------------------ 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/namelist_top_cfg

    r10343 r11831  
    5757!          !  file name  ! frequency (hours) ! variable  ! time interp. !  clim  ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    5858!          !             !  (if <0  months)  !   name    !   (logical)  !  (T/F) ! 'monthly' ! filename ! pairing  ! filename      ! 
    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'  , ''       , ''   , '' 
     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'  , ''       , ''   , '' 
    6767   rn_trfac(1)   =   1.0e-06  !  multiplicative factor 
    6868   rn_trfac(2)   =   1.0e-06  !  -      -      -     - 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/sh_bench

    r9869 r11831  
    99machine=$( hostname | sed -e "s/[0-9]*//g" ) 
    1010case $machine in  
     11    "jean-zay")     ncore_node=40 ;; 
    1112    "beaufixlogin") ncore_node=40 ;; 
    1213    "curie")        ncore_node=16 ;; 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/EXPREF/submit_bench

    r9870 r11831  
    66# 
    77set -u 
    8 set -vx 
     8#set -vx 
    99# 
    1010cores=$1 
     
    1515# 
    1616# 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 
     17nproc_exe1=$( echo $cores | bc ) 
     18nproc=$nproc_exe1 
     19nnode=$(( ( $nproc + $ncore_node - 1 )  / $ncore_node )) 
    2120 
    2221nproc5=$( printf "%05d\n" ${nproc_exe1} ) 
     22 
     23case ${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   ;; 
     84esac 
     85 
    2386 
    2487###################################################################### 
     
    100163if [[ ( "$machine" == "curie" ) || ( "$machine" == "irene" ) ]] 
    101164then 
    102      
    103     case ${resolution} in 
    104    "1") 
    105        if [ $nproc_exe1 -lt 50 ] 
    106        then 
    107       timejob=3600 
    108        elif [ $nproc_exe1 -lt 100 ] 
    109        then 
    110       timejob=1800 
    111        elif [ $nproc_exe1 -lt 200 ] 
    112        then 
    113       timejob=900 
    114        else 
    115       timejob=600 
    116        fi 
    117        ;; 
    118    "025") 
    119        if [ $nproc_exe1 -lt 50 ] 
    120        then 
    121       timejob=15000 
    122        elif [ $nproc_exe1 -lt 100 ] 
    123        then 
    124       timejob=7000 
    125        elif [ $nproc_exe1 -lt 200 ] 
    126        then 
    127       timejob=3600 
    128        elif [ $nproc_exe1 -lt 400 ] 
    129        then 
    130       timejob=2000 
    131        elif [ $nproc_exe1 -lt 800 ] 
    132        then 
    133       timejob=1000 
    134        else 
    135       timejob=600 
    136        fi 
    137        ;; 
    138    "12") 
    139        if [ $nproc_exe1 -lt 200 ] 
    140        then 
    141       timejob=30000 
    142        elif [ $nproc_exe1 -lt 400 ] 
    143        then 
    144       timejob=15000 
    145        elif [ $nproc_exe1 -lt 800 ] 
    146        then 
    147       timejob=8000 
    148        elif [ $nproc_exe1 -lt 1600 ] 
    149        then 
    150       timejob=5000 
    151        elif [ $nproc_exe1 -lt 3200 ] 
    152        then 
    153       timejob=2500 
    154        else 
    155       timejob=1200 
    156        fi 
    157    ;; 
    158     esac 
    159165 
    160166    [ "$machine" == "curie" ] && queuename=standard || queuename=skylake 
    161167     
    162     jobname=$HOME/binrun/jobbench 
     168    EXPjob=../EXP_${resolution}_${nproc5}_${dateref} 
     169    mkdir -p ${EXPjob} 
     170    cd ${EXPjob} 
     171    jobname=jobbench 
    163172    cat > $jobname << EOF 
    164173#!/bin/bash 
     
    176185# 
    177186 
    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} 
     187cd \${BRIDGE_MSUB_PWD} 
     188 
     189for ff in \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*cfg \${BRIDGE_MSUB_PWD}/../EXPREF/namelist_*ref \${BRIDGE_MSUB_PWD}/../BLD/bin/nemo.exe 
     190do 
     191    cp \$ff . 
     192done 
    185193 
    186194jpni=${cores/\**/} 
    187195jpnj=${cores/?*\*/} 
    188196 
    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} 
     197sed -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 
     202time ccc_mprun -n \${BRIDGE_MSUB_NPROC} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 
    192203 
    193204EOF 
     
    196207 
    197208fi 
     209 
     210###################################################################### 
     211### Jean-Zay 
     212###################################################################### 
     213 
     214if [ "$machine" == "jean-zay" ] 
     215then 
     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#========================================== 
     235set -u 
     236#set -xv 
     237# 
     238#cd \${SLURM_SUBMIT_DIR} 
     239cd \${JOBSCRATCH} 
     240pwd 
     241 
     242for ff in \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*cfg \${SLURM_SUBMIT_DIR}/../EXPREF/namelist_*ref \${SLURM_SUBMIT_DIR}/../BLD/bin/nemo.exe 
     243do 
     244    cp \$ff . 
     245done 
     246 
     247jpni=${cores/\**/} 
     248jpnj=${cores/?*\*/} 
     249 
     250sed -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 
     255ls -l 
     256 
     257echo  
     258echo  
     259echo " =========== start the model ===========" 
     260echo  
     261echo  
     262 
     263time srun --mpi=pmi2 --cpu-bind=cores -K1 -n ${nproc} ./nemo.exe > jobout_${resolution}_${nproc5}_${dateref} 2>&1 
     264 
     265ls -l 
     266 
     267if [ "\$( pwd )" != "\${SLURM_SUBMIT_DIR}" ] 
     268then  
     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} 
     270fi 
     271 
     272EOF 
     273 
     274    sbatch $jobname 
     275 
     276fi 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/MY_SRC/usrdef_istate.F90

    r10179 r11831  
    6464      DO jj = 1, jpj 
    6565         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 ) ) 
    6767         ENDDO 
    6868      ENDDO 
     
    7373      DO jk = 1, jpk 
    7474         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 
    7877         ! salinity:   
    7978         pts(:,:,jk,jp_sal) = 30._wp + 1._wp * zfact + z2d(:,:)           ! 30 to 31 +/- 0.05 psu 
     
    8483      ! 
    8584      CALL lbc_lnk('usrdef_istate', pssh, 'T',  1. )            ! apply boundary conditions 
    86       CALL lbc_lnk( 'usrdef_istate', pts, 'T',  1. )            ! apply boundary conditions 
    87       CALL lbc_lnk(  'usrdef_istate', pu, 'U', -1. )            ! apply boundary conditions 
    88       CALL lbc_lnk(  'usrdef_istate', pv, 'V', -1. )            ! apply boundary conditions 
     85      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 
    8988       
    9089   END SUBROUTINE usr_def_istate 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/MY_SRC/usrdef_nam.F90

    r10428 r11831  
    2929CONTAINS 
    3030 
    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 ) 
    3232      !!---------------------------------------------------------------------- 
    3333      !!                     ***  ROUTINE dom_nam  *** 
     
    4141      !! ** input   : - namusr_def namelist found in namelist_cfg 
    4242      !!---------------------------------------------------------------------- 
    43       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    4443      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    4544      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    4847      ! 
    4948      ! 
    50       INTEGER ::   ios, ii      ! Local integer 
     49      INTEGER ::   ios         ! Local integer 
    5150      !                              !!* namusr_def namelist *!! 
    5251      INTEGER ::   nn_isize    ! number of point in i-direction of global(local) domain if >0 (<0)   
     
    5554      INTEGER ::   nn_perio    ! periodicity 
    5655      !                              !!* nammpp namelist *!! 
    57       CHARACTER(len=1) ::   cn_mpi_send 
    58       INTEGER          ::   nn_buffer, jpni, jpnj 
     56      INTEGER          ::   jpni, jpnj 
    5957      LOGICAL          ::   ln_nnogather 
    6058      !! 
    6159      NAMELIST/namusr_def/ nn_isize, nn_jsize, nn_ksize, nn_perio 
    62       NAMELIST/nammpp/ cn_mpi_send, nn_buffer, jpni, jpnj, ln_nnogather 
     60      NAMELIST/nammpp/ jpni, jpnj, ln_nnogather 
    6361      !!----------------------------------------------------------------------      
    6462      ! 
    6563      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6664      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 )       
     65903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
     66      ! 
     67      IF(lwm)   WRITE( numond, namusr_def )       
    6968      ! 
    7069      cd_cfg = 'BENCH'             ! name & resolution (not used) 
    7170      kk_cfg = 0 
    72  
     71      ! 
    7372      IF( nn_isize < 0 .AND. nn_jsize < 0 ) THEN 
    7473      ! 
    7574         REWIND( numnam_ref )              ! Namelist nammpp in reference namelist: mpi variables 
    7675         READ  ( numnam_ref, nammpp, IOSTAT = ios, ERR = 901) 
    77 901      IF( ios /= 0 )   CALL ctl_nam ( ios , 'nammpp in reference namelist', lwp ) 
     76901      IF( ios /= 0 )   CALL ctl_nam ( ios , 'nammpp in reference namelist' ) 
    7877         ! 
    7978         REWIND( numnam_cfg )              ! Namelist nammpp in configuration namelist: mpi variables 
    8079         READ  ( numnam_cfg, nammpp, IOSTAT = ios, ERR = 902 ) 
    81 902      IF( ios >  0 )   CALL ctl_nam ( ios , 'nammpp in configuration namelist', lwp ) 
     80902      IF( ios >  0 )   CALL ctl_nam ( ios , 'nammpp in configuration namelist' ) 
    8281 
    8382         kpi = ( -nn_isize - 2*nn_hls ) * jpni + 2*nn_hls 
     
    8786         kpj = nn_jsize 
    8887      ENDIF 
    89   
     88      ! 
    9089      kpk = nn_ksize 
    9190      kperio = nn_perio 
    92  
    9391      !                             ! 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 
    105113      ENDIF 
    106       IF( nn_jsize > 0 ) THEN 
    107          WRITE(ldtxt(ii),*) '      global domain size-y            nn_jsize = ', nn_jsize               ;   ii = ii + 1 
    108       ELSE 
    109          WRITE(ldtxt(ii),*) '                                          jpnj = ', jpnj                   ;   ii = ii + 1 
    110          WRITE(ldtxt(ii),*) '       local domain size-y           -nn_jsize = ', -nn_jsize              ;   ii = ii + 1 
    111          WRITE(ldtxt(ii),*) '      global domain size-y                 kpj = ', kpj                    ;   ii = ii + 1 
    112       ENDIF 
    113       WRITE(ldtxt(ii),*) '      global domain size-z            nn_ksize = ', nn_ksize                  ;   ii = ii + 1 
    114       WRITE(ldtxt(ii),*) '      LBC of the global domain          kperio = ', kperio                    ;   ii = ii + 1 
    115114      ! 
    116115   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/MY_SRC/usrdef_zgr.F90

    r10170 r11831  
    194194      z2d(:,:) = REAL( jpkm1 , wp )          ! flat bottom 
    195195      ! 
     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      ! 
    196201      CALL lbc_lnk( 'usrdef_zgr', z2d, 'T', 1. )           ! set surrounding land to zero (here jperio=0 ==>> closed) 
    197202      ! 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/BENCH/MY_SRC/zdfiwm.F90

    r10420 r11831  
    406406      REWIND( numnam_ref )              ! Namelist namzdf_iwm in reference namelist : Wave-driven mixing 
    407407      READ  ( numnam_ref, namzdf_iwm, IOSTAT = ios, ERR = 901) 
    408 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist', lwp ) 
     408901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namzdf_iwm in reference namelist' ) 
    409409      ! 
    410410      REWIND( numnam_cfg )              ! Namelist namzdf_iwm in configuration namelist : Wave-driven mixing 
    411411      READ  ( numnam_cfg, namzdf_iwm, IOSTAT = ios, ERR = 902 ) 
    412 902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist', lwp ) 
     412902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namzdf_iwm in configuration namelist' ) 
    413413      IF(lwm) WRITE ( numond, namzdf_iwm ) 
    414414      ! 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/CANAL/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/CANAL/EXPREF/namelist_cfg

    r10075 r11831  
    275275!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    276276!!   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 !!   namdct       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) 
    280280!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    281281!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/CANAL/MY_SRC/diawri.F90

    r10425 r11831  
    531531      !!      define all the NETCDF files and fields 
    532532      !!      At each time step call histdef to compute the mean if ncessary 
    533       !!      Each nwrite time step, output the instantaneous or mean fields 
     533      !!      Each nn_write time step, output the instantaneous or mean fields 
    534534      !!---------------------------------------------------------------------- 
    535535      INTEGER, INTENT( in ) ::   kt   ! ocean time-step index 
     
    547547      REAL(wp), DIMENSION(jpi,jpj,jpk) :: zw3d       ! 3D workspace 
    548548      !!---------------------------------------------------------------------- 
    549       !  
    550       IF( ln_timing )   CALL timing_start('dia_wri') 
    551549      ! 
    552550      IF( ninist == 1 ) THEN     !==  Output the initial state and forcings  ==! 
     
    555553      ENDIF 
    556554      ! 
     555      IF( nn_write == -1 )   RETURN   ! we will never do any output 
     556      !  
     557      IF( ln_timing )   CALL timing_start('dia_wri') 
     558      ! 
    557559      ! 0. Initialisation 
    558560      ! ----------------- 
     
    564566      clop = "x"         ! no use of the mask value (require less cpu time and otherwise the model crashes) 
    565567#if defined key_diainstant 
    566       zsto = nwrite * rdt 
     568      zsto = nn_write * rdt 
    567569      clop = "inst("//TRIM(clop)//")" 
    568570#else 
     
    570572      clop = "ave("//TRIM(clop)//")" 
    571573#endif 
    572       zout = nwrite * rdt 
     574      zout = nn_write * rdt 
    573575      zmax = ( nitend - nit000 + 1 ) * rdt 
    574576 
     
    601603         ! WRITE root name in date.file for use by postpro 
    602604         IF(lwp) THEN 
    603             CALL dia_nam( clhstnam, nwrite,' ' ) 
     605            CALL dia_nam( clhstnam, nn_write,' ' ) 
    604606            CALL ctl_opn( inum, 'date.file', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, numout, lwp, narea ) 
    605607            WRITE(inum,*) clhstnam 
     
    609611         ! Define the T grid FILE ( nid_T ) 
    610612 
    611          CALL dia_nam( clhstnam, nwrite, 'grid_T' ) 
     613         CALL dia_nam( clhstnam, nn_write, 'grid_T' ) 
    612614         IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam    ! filename 
    613615         CALL histbeg( clhstnam, jpi, glamt, jpj, gphit,           &  ! Horizontal grid: glamt and gphit 
     
    645647         ! Define the U grid FILE ( nid_U ) 
    646648 
    647          CALL dia_nam( clhstnam, nwrite, 'grid_U' ) 
     649         CALL dia_nam( clhstnam, nn_write, 'grid_U' ) 
    648650         IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam    ! filename 
    649651         CALL histbeg( clhstnam, jpi, glamu, jpj, gphiu,           &  ! Horizontal grid: glamu and gphiu 
     
    658660         ! Define the V grid FILE ( nid_V ) 
    659661 
    660          CALL dia_nam( clhstnam, nwrite, 'grid_V' )                   ! filename 
     662         CALL dia_nam( clhstnam, nn_write, 'grid_V' )                   ! filename 
    661663         IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam 
    662664         CALL histbeg( clhstnam, jpi, glamv, jpj, gphiv,           &  ! Horizontal grid: glamv and gphiv 
     
    671673         ! Define the W grid FILE ( nid_W ) 
    672674 
    673          CALL dia_nam( clhstnam, nwrite, 'grid_W' )                   ! filename 
     675         CALL dia_nam( clhstnam, nn_write, 'grid_W' )                   ! filename 
    674676         IF(lwp) WRITE(numout,*) " Name of NETCDF file ", clhstnam 
    675677         CALL histbeg( clhstnam, jpi, glamt, jpj, gphit,           &  ! Horizontal grid: glamt and gphit 
     
    762764         ENDIF 
    763765 
    764          IF( .NOT. ln_cpl ) THEN 
     766         IF( ln_ssr ) THEN 
    765767            CALL histdef( nid_T, "sohefldp", "Surface Heat Flux: Damping"         , "W/m2"   ,   &  ! qrp 
    766768               &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
     
    770772               &          jpi, jpj, nh_T, 1  , 1, 1  , -99 , 32, clop, zsto, zout ) 
    771773         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        
    782775         clmx ="l_max(only(x))"    ! max index on a period 
    783776!         CALL histdef( nid_T, "sobowlin", "Bowl Index"                         , "W-point",   &  ! bowl INDEX  
     
    855848      ! donne le nombre d'elements, et ndex la liste des indices a sortir 
    856849 
    857       IF( lwp .AND. MOD( itmod, nwrite ) == 0 ) THEN  
     850      IF( lwp .AND. MOD( itmod, nn_write ) == 0 ) THEN  
    858851         WRITE(numout,*) 'dia_wri : write model outputs in NetCDF files at ', kt, 'time-step' 
    859852         WRITE(numout,*) '~~~~~~ ' 
     
    919912      ENDIF 
    920913 
    921       IF( .NOT. ln_cpl ) THEN 
     914      IF( ln_ssr ) THEN 
    922915         CALL histwrite( nid_T, "sohefldp", it, qrp           , ndim_hT, ndex_hT )   ! heat flux damping 
    923916         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) 
    931918         CALL histwrite( nid_T, "sosafldp", it, zw2d          , ndim_hT, ndex_hT )   ! salt flux damping 
    932919      ENDIF 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/CANAL/MY_SRC/domvvl.F90

    r10425 r11831  
    994994      REWIND( numnam_ref )              ! Namelist nam_vvl in reference namelist :  
    995995      READ  ( numnam_ref, nam_vvl, IOSTAT = ios, ERR = 901) 
    996 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nam_vvl in reference namelist', lwp ) 
     996901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nam_vvl in reference namelist' ) 
    997997      REWIND( numnam_cfg )              ! Namelist nam_vvl in configuration namelist : Parameters of the run 
    998998      READ  ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 
    999 902   IF( ios >  0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwp ) 
     999902   IF( ios >  0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' ) 
    10001000      IF(lwm) WRITE ( numond, nam_vvl ) 
    10011001      ! 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/CANAL/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    5858CONTAINS 
    5959 
    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 ) 
    6161      !!---------------------------------------------------------------------- 
    6262      !!                     ***  ROUTINE dom_nam  *** 
     
    7070      !! ** input   : - namusr_def namelist found in namelist_cfg 
    7171      !!---------------------------------------------------------------------- 
    72       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    7372      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    7473      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    7675      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    7776      ! 
    78       INTEGER ::   ios, ii      ! Local integer 
    79       REAL(wp)::   zh ! Local scalars 
     77      INTEGER ::   ios      ! Local integer 
     78      REAL(wp)::   zh       ! Local scalars 
    8079      !! 
    8180      NAMELIST/namusr_def/  rn_domszx, rn_domszy, rn_domszz, rn_dx, rn_dy, rn_dz, rn_0xratio, rn_0yratio   & 
     
    8584      !!---------------------------------------------------------------------- 
    8685      ! 
    87       ii = 1 
    88       ! 
    8986      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    9087      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    91 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     88902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', cdtxt ) 
     89      ! 
     90      IF(lwm)   WRITE( numond, namusr_def ) 
    9291      ! 
    9392#if defined key_agrif  
     
    103102#endif 
    104103      ! 
    105       WRITE( ldnam(:), namusr_def ) 
     104      IF(lwm)   WRITE( numond, namusr_def ) 
    106105      ! 
    107106      cd_cfg = 'EW_CANAL'             ! name & resolution (not used) 
     
    120119      ! 
    121120      zh  = (kpk-1)*rn_dz 
    122       !                             ! control print 
    123       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    124       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    125       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    126       WRITE(ldtxt(ii),*) '   Namelist namusr_def : EW_CANAL test case'                                  ;   ii = ii + 1 
    127       WRITE(ldtxt(ii),*) '      horizontal domain size-x          rn_domszx  = ', rn_domszx, ' km'      ;   ii = ii + 1 
    128       WRITE(ldtxt(ii),*) '      horizontal domain size-y          rn_domszy  = ', rn_domszy, ' km'      ;   ii = ii + 1 
    129       WRITE(ldtxt(ii),*) '      vertical   domain size-z          rn_domszz  = ', rn_domszz, '  m'      ;   ii = ii + 1 
    130       WRITE(ldtxt(ii),*) '      horizontal x-resolution           rn_dx      = ',     rn_dx, ' km'      ;   ii = ii + 1 
    131       WRITE(ldtxt(ii),*) '      horizontal y-resolution           rn_dy      = ',     rn_dy, ' km'      ;   ii = ii + 1 
    132       WRITE(ldtxt(ii),*) '      vertical resolution               rn_dz      = ',     rn_dz, '  m'      ;   ii = ii + 1 
    133       WRITE(ldtxt(ii),*) '      x-domain ratio of the 0           rn_0xratio = ', rn_0xratio            ;   ii = ii + 1 
    134       WRITE(ldtxt(ii),*) '      y-domain ratio of the 0           rn_0yratio = ', rn_0yratio            ;   ii = ii + 1 
    135       WRITE(ldtxt(ii),*) '          H [m] : ', zh                                                       ;   ii = ii + 1 
    136       WRITE(ldtxt(ii),*) '      F computation                     nn_fcase   = ',   nn_fcase            ;   ii = ii + 1 
    137       WRITE(ldtxt(ii),*) '      Reference latitude                rn_ppgphi0 = ', rn_ppgphi0            ;   ii = ii + 1 
    138       WRITE(ldtxt(ii),*) '      10m wind speed                    rn_u10     = ',     rn_u10, ' m/s'    ;   ii = ii + 1 
    139       WRITE(ldtxt(ii),*) '         wind latitudinal extension     rn_windszy = ', rn_windszy, ' km'     ;   ii = ii + 1 
    140       WRITE(ldtxt(ii),*) '         wind longitudinal extension    rn_windszx = ', rn_windszx, ' km'     ;   ii = ii + 1 
    141       WRITE(ldtxt(ii),*) '         Uoce multiplicative factor     rn_uofac   = ',   rn_uofac            ;   ii = ii + 1 
    142       WRITE(ldtxt(ii),*) '      initial Canal max current        rn_vtxmax  = ',  rn_vtxmax, ' m/s'    ;   ii = ii + 1 
    143       WRITE(ldtxt(ii),*) '      initial zonal current             rn_uzonal  = ',  rn_uzonal, ' m/s'    ;   ii = ii + 1 
    144       WRITE(ldtxt(ii),*) '         Jet latitudinal extension      rn_ujetszy = ', rn_ujetszy, ' km'     ;   ii = ii + 1 
    145       WRITE(ldtxt(ii),*) '         Jet longitudinal extension     rn_ujetszx = ', rn_ujetszx, ' km'     ;   ii = ii + 1 
    146       WRITE(ldtxt(ii),*) '      bottom definition (0:flat)        nn_botcase = ', nn_botcase            ;   ii = ii + 1 
    147       WRITE(ldtxt(ii),*) '      initial condition case            nn_initcase= ', nn_initcase           ;   ii = ii + 1 
    148       WRITE(ldtxt(ii),*) '                   (0:rest, 1:zonal current, 10:shear)'                       ;   ii = ii + 1 
    149       WRITE(ldtxt(ii),*) '      add random noise on initial ssh   ln_sshnoise= ', ln_sshnoise           ;   ii = ii + 1 
    150       WRITE(ldtxt(ii),*) '      Gaussian lambda parameter          rn_lambda = ', rn_lambda             ;   ii = ii + 1 
    151       ! 
    152121      !                             ! Set the lateral boundary condition of the global domain 
    153122      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 
    158157      ! 
    159158   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV1D/EXPREF/namelist_cfg

    r10513 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV1D/EXPREF/namelist_cfg_120pts

    r10513 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV1D/EXPREF/namelist_cfg_240pts

    r10513 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV1D/EXPREF/namelist_cfg_60pts

    r10513 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV1D/MY_SRC/usrdef_nam.F90

    r10513 r11831  
    4040CONTAINS 
    4141 
    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 ) 
    4343      !!---------------------------------------------------------------------- 
    4444      !!                     ***  ROUTINE dom_nam  *** 
     
    5252      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5353      !!---------------------------------------------------------------------- 
    54       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5554      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5655      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5857      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5958      ! 
    60       INTEGER ::   ios, ii   ! Local integer 
     59      INTEGER ::   ios       ! Local integer 
    6160      REAL(wp)::   zlx, zly  ! Local scalars 
    6261      !! 
     
    6463      !!---------------------------------------------------------------------- 
    6564      ! 
    66       ii = 1 
    67       ! 
    6865      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6966      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    70 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     67902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    7168      ! 
    72       WRITE( ldnam(:), namusr_def ) 
     69      IF(lwm)   WRITE( numond, namusr_def ) 
    7370      ! 
    7471      cd_cfg = 'ICE_ADV1D'           ! name & resolution (not used) 
     
    8279      zlx = kpi*rn_dx*1.e-3 
    8380      zly = kpj*rn_dy*1.e-3 
    84       !                             ! control print 
    85       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '   Namelist namusr_def : ICE_ADV1D test case'                                 ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '      horizontal resolution                    rn_dx  = ', rn_dx, ' meters'   ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '      horizontal resolution                    rn_dy  = ', rn_dy, ' meters'   ;   ii = ii + 1 
    91       WRITE(ldtxt(ii),*) '      ICE_ADV1D domain  '                                                     ;   ii = ii + 1 
    92       WRITE(ldtxt(ii),*) '         LX [km]: ', zlx                                                      ;   ii = ii + 1 
    93       WRITE(ldtxt(ii),*) '         LY [km]: ', zly                                                      ;   ii = ii + 1 
    94       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo = ', kpi                ;   ii = ii + 1 
    95       WRITE(ldtxt(ii),*) '                                               jpjglo = ', kpj                ;   ii = ii + 1 
    96       WRITE(ldtxt(ii),*) '                                               jpkglo = ', kpk                ;   ii = ii + 1 
    97       WRITE(ldtxt(ii),*) '         Coriolis:', ln_corio                                                 ;   ii = ii + 1 
    98       ! 
    9981      !                             ! Set the lateral boundary condition of the global domain 
    10082      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 
    105102      ! 
    106103   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV2D/EXPREF/namelist_cfg

    r10520 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_ADV2D/MY_SRC/usrdef_nam.F90

    r10515 r11831  
    4040CONTAINS 
    4141 
    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 ) 
    4343      !!---------------------------------------------------------------------- 
    4444      !!                     ***  ROUTINE dom_nam  *** 
     
    5252      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5353      !!---------------------------------------------------------------------- 
    54       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5554      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5655      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5857      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5958      ! 
    60       INTEGER ::   ios, ii   ! Local integer 
     59      INTEGER ::   ios       ! Local integer 
    6160      REAL(wp)::   zlx, zly  ! Local scalars 
    6261      !! 
     
    6463      !!---------------------------------------------------------------------- 
    6564      ! 
    66       ii = 1 
    67       ! 
    6865      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6966      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    70 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     67902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
     68      ! 
     69      IF(lwm)   WRITE( numond, namusr_def ) 
    7170      ! 
    7271#if defined key_agrif  
     
    7978#endif 
    8079      ! 
    81       WRITE( ldnam(:), namusr_def ) 
     80      IF(lwm)   WRITE( numond, namusr_def ) 
    8281      ! 
    8382      cd_cfg = 'ICE_ADV2D'           ! name & resolution (not used) 
    84       kk_cfg = INT( rn_dx ) 
     83      kk_cfg = NINT( rn_dx ) 
    8584      ! 
    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 
    9189         kpi = nbcellsx + 2 + 2*nbghostcells 
    9290         kpj = nbcellsy + 2 + 2*nbghostcells 
    9391      ENDIF 
    94 #endif 
    9592      kpk = 1 
    9693      ! 
     
    9996      zlx = kpi*rn_dx*1.e-3 
    10097      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 
    101102      !                             ! 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 
    121120      ENDIF 
    122 #endif 
    123       ! 
    124       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    125       WRITE(ldtxt(ii),*) '   Lateral boundary condition of the global domain'                           ;   ii = ii + 1 
    126       WRITE(ldtxt(ii),*) '      ICE_ADV2D : bi-periodic basin               jperio = ', kperio          ;   ii = ii + 1 
    127121      ! 
    128122   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_AGRIF/EXPREF/1_namelist_cfg

    r10516 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_AGRIF/EXPREF/file_def_nemo-ice.xml

    r10516 r11831  
    2323        <field field_ref="icethic"          name="sithic_max" operation="maximum" /> 
    2424        <field field_ref="icethic"          name="sithic_min" operation="minimum" /> 
    25         <field field_ref="iceneg_pres"      name="sineg_pres" /> 
    26         <field field_ref="iceneg_volu"      name="sineg_volu" /> 
    2725        <field field_ref="fasticepres"      name="fasticepres" /> 
    2826        <field field_ref="icevolu"          name="sivolu" /> 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_AGRIF/EXPREF/namelist_cfg

    r10516 r11831  
    201201!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    202202!!   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 !!   namdct       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) 
    206206!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    207207!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ICE_AGRIF/MY_SRC/usrdef_nam.F90

    r10516 r11831  
    4040CONTAINS 
    4141 
    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 ) 
    4343      !!---------------------------------------------------------------------- 
    4444      !!                     ***  ROUTINE dom_nam  *** 
     
    5252      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5353      !!---------------------------------------------------------------------- 
    54       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5554      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5655      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5857      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5958      ! 
    60       INTEGER ::   ios, ii   ! Local integer 
     59      INTEGER ::   ios       ! Local integer 
    6160      REAL(wp)::   zlx, zly  ! Local scalars 
    6261      !! 
     
    6463      !!---------------------------------------------------------------------- 
    6564      ! 
    66       ii = 1 
    67       ! 
    6865      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6966      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    70 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     67902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
     68      ! 
     69      IF(lwm)   WRITE( numond, namusr_def ) 
    7170      ! 
    7271#if defined key_agrif  
     
    7978#endif 
    8079      ! 
    81       WRITE( ldnam(:), namusr_def ) 
     80      IF(lwm)   WRITE( numond, namusr_def ) 
    8281      ! 
    8382      cd_cfg = 'ICE_AGRIF'           ! name & resolution (not used) 
    84       kk_cfg = INT( rn_dx ) 
     83      kk_cfg = NINT( rn_dx ) 
    8584      ! 
    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 
    9189         kpi = nbcellsx + 2 + 2*nbghostcells 
    9290         kpj = nbcellsy + 2 + 2*nbghostcells 
    9391      ENDIF 
    94 #endif 
    9592      kpk = 1 
    9693      ! 
     
    9996      zlx = kpi*rn_dx*1.e-3 
    10097      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 
    101102      !                             ! 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 
    121120      ENDIF 
    122 #endif 
    123       ! 
    124       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    125       WRITE(ldtxt(ii),*) '   Lateral boundary condition of the global domain'                           ;   ii = ii + 1 
    126       WRITE(ldtxt(ii),*) '      ICE_AGRIF : bi-periodic basin               jperio = ', kperio          ;   ii = ii + 1 
    127121      ! 
    128122   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ISOMIP/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ISOMIP/EXPREF/namelist_cfg

    r10075 r11831  
    7878!              !           !  (if <0  months)  !   name   !    (logical)   !  (T/F)  ! 'monthly' ! filename ! pairing  ! filename      ! 
    7979! nn_isf == 4 
    80    sn_fwfisf   = 'rnfisf'  ,         -12       ,'sowflisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
     80   sn_fwfisf   = 'rnfisf'  ,         -12.      ,'sowflisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    8181! nn_isf == 3 
    82    sn_rnfisf   = 'rnfisf'  ,         -12       ,'sofwfisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
     82   sn_rnfisf   = 'rnfisf'  ,         -12.      ,'sofwfisf',     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    8383! nn_isf == 2 and 3 
    84    sn_depmax_isf = 'rnfisf' ,        -12       ,'sozisfmax' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    85    sn_depmin_isf = 'rnfisf' ,        -12       ,'sozisfmin' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
     84   sn_depmax_isf = 'rnfisf' ,        -12.      ,'sozisfmax' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
     85   sn_depmin_isf = 'rnfisf' ,        -12.      ,'sozisfmin' ,   .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    8686! nn_isf == 2 
    87    sn_Leff_isf = 'rnfisf'  ,         -12       ,'Leff'    ,     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
     87   sn_Leff_isf = 'rnfisf'  ,         -12.      ,'Leff'    ,     .false.    , .true.  , 'yearly'  ,  ''      ,   ''     , '' 
    8888! for all case 
    8989   nn_isf      = 1         !  ice shelf melting/freezing 
     
    272272!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    273273!!   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 !!   namdct       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) 
    277277!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    278278!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/ISOMIP/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    4242CONTAINS 
    4343 
    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 ) 
    4545      !!---------------------------------------------------------------------- 
    4646      !!                     ***  ROUTINE dom_nam  *** 
     
    5454      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5555      !!---------------------------------------------------------------------- 
    56       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5756      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5857      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    6059      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    6160      ! 
    62       INTEGER ::   ios, ii   ! Local integer 
     61      INTEGER ::   ios   ! Local integer 
    6362      !! 
    6463      NAMELIST/namusr_def/ ln_zco, ln_zps, ln_sco, rn_e1deg, rn_e2deg, rn_e3 
    6564      !!---------------------------------------------------------------------- 
    6665      ! 
    67       ii = 1 
    68       ! 
    6966      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    7067      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    71 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     68902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    7269      ! 
    73       WRITE( ldnam(:), namusr_def ) 
     70      IF(lwm)   WRITE( numond, namusr_def ) 
    7471      ! 
    7572      cd_cfg = 'ISOMIP'           ! name & resolution (not used) 
     
    8178      kpk = INT( rbathy / rn_e3    ) + 1     ! add 1 for t-point in the seafloor 
    8279      ! 
    83       !                             ! control print 
    84       WRITE(ldtxt(ii),*) '   '                                                                              ;   ii = ii + 1 
    85       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'       ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                     ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '   Namelist namusr_def : ISOMIP test case'                                        ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '      type of vertical coordinate : '                                             ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '         z-coordinate flag                     ln_zco   = ', ln_zco               ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '         z-partial-step coordinate flag        ln_zps   = ', ln_zps               ;   ii = ii + 1 
    91       WRITE(ldtxt(ii),*) '         s-coordinate flag                     ln_sco   = ', ln_sco               ;   ii = ii + 1 
    92       WRITE(ldtxt(ii),*) '      resolution'                                                                 ;   ii = ii + 1 
    93       WRITE(ldtxt(ii),*) '         zonal      resolution                 rn_e1deg = ', rn_e1deg, ' degrees' ;   ii = ii + 1 
    94       WRITE(ldtxt(ii),*) '         meridional resolution                 rn_e1deg = ', rn_e1deg, ' degrees' ;   ii = ii + 1 
    95       WRITE(ldtxt(ii),*) '         vertical   resolution                 rn_e3    = ', rn_e3   , ' meters'  ;   ii = ii + 1 
    96       WRITE(ldtxt(ii),*) '      ISOMIP domain = 15° x 10° x 900 m'                                          ;   ii = ii + 1 
    97       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo   = ', kpi                  ;   ii = ii + 1 
    98       WRITE(ldtxt(ii),*) '                                               jpjglo   = ', kpj                  ;   ii = ii + 1 
    99       WRITE(ldtxt(ii),*) '                                               jpkglo   = ', kpk                  ;   ii = ii + 1 
    100       ! 
    101       ! 
    10280      !                             ! Set the lateral boundary condition of the global domain 
    10381      kperio = 0                    ! ISOMIP configuration : close basin 
    10482      ! 
    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 
    108105      ! 
    109106   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/LOCK_EXCHANGE/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/LOCK_EXCHANGE/EXPREF/namelist_FCT2_flux_ubs_cfg

    r10075 r11831  
    277277!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    278278!!   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 !!   namdct       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) 
    282282!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    283283!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/LOCK_EXCHANGE/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    3838CONTAINS 
    3939 
    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 ) 
    4141      !!---------------------------------------------------------------------- 
    4242      !!                     ***  ROUTINE dom_nam  *** 
     
    5050      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5151      !!---------------------------------------------------------------------- 
    52       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5352      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5453      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5655      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5756      ! 
    58       INTEGER ::   ios, ii   ! Local integer 
     57      INTEGER ::   ios   ! Local integer 
    5958      !! 
    6059      NAMELIST/namusr_def/ rn_dx, rn_dz 
    6160      !!---------------------------------------------------------------------- 
    6261      ! 
    63       ii = 1 
    64       ! 
    6562      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6663      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    67 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     64902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    6865      ! 
    69       WRITE( ldnam(:), namusr_def ) 
     66      IF(lwm)   WRITE( numond, namusr_def ) 
    7067      ! 
    7168      ! 
     
    7774      kpj = 3 
    7875      kpk = INT(  20.  / rn_dz ) + 1 
    79       ! 
    80       !                             ! control print 
    81       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    82       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    83       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    84       WRITE(ldtxt(ii),*) '   Namelist namusr_def : LOCK_EXCHANGE test case'                             ;   ii = ii + 1 
    85       WRITE(ldtxt(ii),*) '      horizontal resolution                    rn_dx  = ', rn_dx, ' meters'   ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) '      vertical   resolution                    rn_dz  = ', rn_dz, ' meters'   ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '      LOCK_EXCHANGE domain = 64 km  x  3 grid-points  x  20 m'                ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo = ', kpi                ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '                                               jpjglo = ', kpj                ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '                                               jpkglo = ', kpk                ;   ii = ii + 1 
    91       ! 
    9276      !                             ! Set the lateral boundary condition of the global domain 
    9377      kperio = 0                    ! LOCK_EXCHANGE configuration : closed domain 
    9478      ! 
    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 
    9895      ! 
    9996   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/OVERFLOW/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/OVERFLOW/EXPREF/namelist_zps_FCT4_flux_ubs_cfg

    r10075 r11831  
    291291!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    292292!!   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 !!   namdct       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) 
    296296!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    297297!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/OVERFLOW/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    3939CONTAINS 
    4040 
    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 ) 
    4242      !!---------------------------------------------------------------------- 
    4343      !!                     ***  ROUTINE dom_nam  *** 
     
    5151      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5252      !!---------------------------------------------------------------------- 
    53       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5453      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5554      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5756      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5857      ! 
    59       INTEGER ::   ios, ii   ! Local integer 
     58      INTEGER ::   ios   ! Local integer 
    6059      !! 
    6160      NAMELIST/namusr_def/ ln_zco, ln_zps, ln_sco, rn_dx, rn_dz 
    6261      !!---------------------------------------------------------------------- 
    6362      ! 
    64       ii = 1 
    65       ! 
    6663      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6764      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    68 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     65902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    6966      ! 
    70       WRITE( ldnam(:), namusr_def ) 
     67      IF(lwm)   WRITE( numond, namusr_def ) 
    7168      ! 
    7269      cd_cfg = 'OVERFLOW'           ! name & resolution (not used) 
     
    7976      ! 
    8077      !                             ! control print 
    81       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    82       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    83       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    84       WRITE(ldtxt(ii),*) '   Namelist namusr_def : OVERFLOW test case'                                  ;   ii = ii + 1 
    85       WRITE(ldtxt(ii),*) '      type of vertical coordinate : '                                         ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) '         z-coordinate flag                     ln_zco = ', ln_zco             ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '         z-partial-step coordinate flag        ln_zps = ', ln_zps             ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '         s-coordinate flag                     ln_sco = ', ln_sco             ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '      horizontal resolution                    rn_dx  = ', rn_dx, ' meters'   ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '      vertical   resolution                    rn_dz  = ', rn_dz, ' meters'   ;   ii = ii + 1 
    91       WRITE(ldtxt(ii),*) '      OVERFLOW domain = 200 km x 3 grid-points x 2000 m'                      ;   ii = ii + 1 
    92       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo = ', kpi                ;   ii = ii + 1 
    93       WRITE(ldtxt(ii),*) '                                               jpjglo = ', kpj                ;   ii = ii + 1 
    94       WRITE(ldtxt(ii),*) '                                               jpkglo = ', kpk                ;   ii = ii + 1 
     78      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 
    9592      ! 
    9693      !                             ! Set the lateral boundary condition of the global domain 
    9794      kperio = 0                    ! OVERFLOW configuration : close basin 
    9895      ! 
    99       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    100       WRITE(ldtxt(ii),*) '   Lateral boundary condition of the global domain'                           ;   ii = ii + 1 
    101       WRITE(ldtxt(ii),*) '      OVERFLOW : closed basin                  jperio = ', kperio             ;   ii = ii + 1 
     96      WRITE(numout,*) '   ' 
     97      WRITE(numout,*) '   Lateral boundary condition of the global domain' 
     98      WRITE(numout,*) '      OVERFLOW : closed basin                  jperio = ', kperio 
    10299      ! 
    103100   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/README.rst

    r10605 r11831  
    33********************** 
    44 
    5 The complete and up-to-date set of test cases is available on 
    6 `NEMO test cases Github repository <http://github.com/NEMO-ocean/NEMO-examples>`_. 
    7  
    8 Download it directly in the ``./tests`` root directory with 
     5.. todo:: 
     6 
     7   CANAL animated gif is missing 
     8 
     9.. contents:: 
     10   :local: 
     11   :depth: 1 
     12 
     13Installation 
     14============ 
     15 
     16Download 
     17-------- 
     18 
     19| The complete and up-to-date set of test cases is available on 
     20  :github:`NEMO test cases repository <NEMO-examples>`. 
     21| Download it directly into the :file:`./tests` root directory with 
    922 
    1023.. code-block:: console 
     
    1225   $ git clone http://github.com/NEMO-ocean/NEMO-examples 
    1326 
    14 .. contents:: 
    15    :local: 
    16  
    17 Procedure 
    18 ========= 
    19  
    20 Compile test cases 
    21 ------------------ 
    22  
    23 The compilation of the test cases is very similar to the manner the reference configurations are compiled. 
    24 If you are not familiar on how to compile NEMO, it is first recomended to read :doc:`the instructions <install>` 
    25  
    26 | In the same manner as the ref. cfg are compiled with '-r' option, test cases can be compile by the use of makenemo with '-a' option. 
    27 | Here an example to compile a copy named WAD2 of the wetting and drying test case (WAD) on the macport_osx architecture on 4 cores: 
     27Compilation 
     28----------- 
     29 
     30The compilation of the test cases is very similar to 
     31the manner the reference configurations are compiled. 
     32If you are not familiar on how to compile NEMO, 
     33it is first recomended to read :doc:`the instructions <install>`. 
     34 
     35| As the reference configurations are compiled with ``-r`` option, 
     36  test cases can be compiled by the use of :file:`makenemo` with ``-a`` option. 
     37| Here an example to compile a copy named WAD2 of the wetting and drying test case (WAD): 
    2838 
    2939.. code-block:: console 
    3040 
    31    $ ./makenemo -n 'WAD2' -a 'WAD' -m 'macport_osx' -j '4' 
    32  
    33 Run and analyse the test cases 
    34 ------------------------------ 
    35  
    36 There no requirement of specific input file for the test_cases presented here. The XIOS xml input files and namelist are already setup correctly.  
     41   $ ./makenemo -n 'WAD2' -a 'WAD' -m 'my_arch' -j '4' 
     42 
     43Run and analysis 
     44---------------- 
     45 
     46There no requirement of specific input file for the test_cases presented here. 
     47The XIOS xml input files and namelist are already setup correctly. 
    3748For detailed description and Jupyter notebook, the reader is directed on 
    38 the `NEMO test cases repository <http://github.com/NEMO-ocean/NEMO-examples>`_ 
     49the :github:`NEMO test cases repository <NEMO-examples>` 
    3950 
    4051The description below is a brief advertisement of some test cases. 
    4152 
     53List of test cases 
     54================== 
     55 
    4256ICE_AGRIF 
    43 ========= 
    44    
    45   This test case illustrates the advection of an ice patch across an East/West and North/South periodic channel 
    46   over a slab ocean (i.e. one ocean layer), and with an AGRIF zoom (1:3) in the center 
    47   The purpose of this configuration is to test the advection of the ice patch in   
    48   and across the AGRIF boundary 
    49   One can either impose ice velocities or ice-atm. stresses and let rheology define velocities 
    50   (see README for details) 
    51  
    52   .. image:: _static/ICE_AGRIF_UDIAG_43days_UM5.gif 
     57--------- 
     58 
     59.. figure:: _static/ICE_AGRIF_UDIAG_43days_UM5.gif 
     60   :width: 200px 
     61   :align: left 
     62 
     63   .. 
     64 
     65| This test case illustrates the advection of an ice patch across 
     66  an East/West and North/South periodic channel over a slab ocean (i.e. one ocean layer), 
     67  and with an AGRIF zoom (1:3) in the center. 
     68| The purpose of this configuration is to 
     69  test the advection of the ice patch in and across the AGRIF boundary. 
     70  One can either impose ice velocities or ice-atm. 
     71  Stresses and let rheology define velocities (see :file:`README` for details) 
    5372 
    5473VORTEX 
    55 ====== 
    56    
    57   This test case illustrates the propagation of an anticyclonic eddy over a Beta plan and a flat bottom. 
    58   It is implemented here with an online refined subdomain (1:3) out of which the vortex propagates. 
    59   It serves as a benchmark for quantitative estimates of nesting errors as in Debreu et al. (2012) :cite:`DEBREU2012`, 
    60   Penven et al. (2006) :cite:`PENVEN2006` or Spall and Holland (1991) :cite:`SPALL1991`. 
    61    
    62   The animation below (sea level anomaly in meters) illustrates with two 1:2 successively nested grids how 
    63   the vortex smoothly propagates out of the refined grids. 
    64    
    65   .. image:: _static/VORTEX_anim.gif 
     74------ 
     75 
     76.. figure:: _static/VORTEX_anim.gif 
     77   :width: 200px 
     78   :align: right 
     79 
     80   .. 
     81 
     82This test case illustrates the propagation of an anticyclonic eddy over a Beta plan and a flat bottom. 
     83It is implemented here with an online refined subdomain (1:3) out of which the vortex propagates. 
     84It serves as a benchmark for quantitative estimates of nesting errors as in :cite:`DEBREU2012`, 
     85:cite:`PENVEN2006` or :cite:`SPALL1991`. 
     86 
     87The animation (sea level anomaly in meters) illustrates with 
     88two 1:2 successively nested grids how the vortex smoothly propagates out of the refined grids. 
    6689 
    6790ISOMIP 
    68 ====== 
    69  
    70   The purpose of this test case is to evaluate the impact of various schemes and new development with the iceshelf cavities circulation and melt. 
    71   This configuration served as initial assesment of the ice shelf module in Losh et al. (2008) :cite:`LOSCH2008` and Mathiot et al. (2017) :cite:`MATHIOT2017`.  
    72   The default setup is the one described `here <http://staff.acecrc.org.au/~bkgalton/ISOMIP/test_cavities.pdf>`_. 
    73    
    74   The figure below (meridional overturning circulation) illustrates the circulation generated after 10000 days by the ice shelf melting (ice pump). 
    75  
    76   .. image:: _static/ISOMIP_moc.png 
     91------ 
     92 
     93.. figure:: _static/ISOMIP_moc.png 
     94   :width: 200px 
     95   :align: left 
     96 
     97   .. 
     98 
     99| The purpose of this test case is to evaluate the impact of various schemes and new development with 
     100  the iceshelf cavities circulation and melt. 
     101  This configuration served as initial assesment of the ice shelf module in :cite:`LOSCH2008` and 
     102  :cite:`MATHIOT2017`. 
     103  The default setup is the one described |ISOMIP|_. 
     104| The figure (meridional overturning circulation) illustrates 
     105  the circulation generated after 10000 days by the ice shelf melting (ice pump). 
     106 
     107.. |ISOMIP| replace:: here 
    77108 
    78109LOCK_EXCHANGE 
    79 ============= 
    80  
    81   The LOCK EXCHANGE experiment is a classical fluid dynamics experiment that has been adapted 
    82   by Haidvogel and Beckmann (1999) :cite:`HAIDVOGEL1999` for testing advection schemes in ocean circulation models. 
    83   It has been used by several authors including Burchard and Bolding (2002) :cite:`BURCHARD2002` and Ilicak et al. (2012) :cite:`ILICAK2012`. 
    84   The LOCK EXCHANGE experiment can in particular illustrate the impact of different choices of numerical schemes  
    85   and/or subgrid closures on spurious interior mixing. 
    86  
    87   Below the animation of the LOCK_EXCHANGE test case using the advection scheme FCT4 (forth order) for tracer and ubs for dynamics. 
    88  
    89   .. image:: _static/LOCK-FCT4_flux_ubs.gif 
     110------------- 
     111 
     112.. figure:: _static/LOCK-FCT4_flux_ubs.gif 
     113   :width: 200px 
     114   :align: right 
     115 
     116   .. 
     117 
     118| The LOCK EXCHANGE experiment is a classical fluid dynamics experiment that has been adapted 
     119  by :cite:`HAIDVOGEL1999` for testing advection schemes in ocean circulation models. 
     120  It has been used by several authors including :cite:`BURCHARD2002` and :cite:`ILICAK2012`. 
     121  The LOCK EXCHANGE experiment can in particular illustrate 
     122  the impact of different choices of numerical schemes and/or subgrid closures on 
     123  spurious interior mixing. 
     124| Here the animation of the LOCK_EXCHANGE test case using 
     125  the advection scheme FCT4 (forth order) for tracer and ubs for dynamics. 
    90126 
    91127OVERFLOW 
    92 ======== 
    93  
    94   The OVERFLOW experiment illustrates the impact of different choices of numerical schemes  
    95   and/or subgrid closures on spurious interior mixing close to bottom topography.  
    96   The OVERFLOW experiment is adapted from the non-rotating overflow configuration described  
    97   in Haidvogel and Beckmann (1999) :cite:`HAIDVOGEL1999` and further used by Ilicak et al. (2012) :cite:`ILICAK2012`. 
    98   Here we can assess the behaviour of the second-order tracer advection scheme FCT2 and fortht-order FCT4, z-coordinate and sigma coordinate (...). 
    99  
    100   Below the animation of the OVERFLOW test case in sigma coordinate with the forth-order advection scheme FCT4. 
    101  
    102   .. image:: _static/OVF-sco_FCT4_flux_cen-ahm1000.gif 
     128-------- 
     129 
     130.. figure:: _static/OVF-sco_FCT4_flux_cen-ahm1000.gif 
     131   :width: 200px 
     132   :align: left 
     133 
     134   .. 
     135 
     136| The OVERFLOW experiment illustrates the impact of different choices of numerical schemes and/or 
     137  subgrid closures on spurious interior mixing close to bottom topography. 
     138  The OVERFLOW experiment is adapted from the non-rotating overflow configuration described in 
     139  :cite:`HAIDVOGEL1999` and further used by :cite:`ILICAK2012`. 
     140  Here we can assess the behaviour of the second-order tracer advection scheme FCT2 and 
     141  forth-order FCT4, z-coordinate and sigma coordinate (...). 
     142| Here the animation of the OVERFLOW test case in sigma coordinate with 
     143  the forth-order advection scheme FCT4. 
    103144 
    104145WAD 
    105 === 
    106  
    107   A set of simple closed basin geometries for testing the Wetting and drying capabilities.  
    108   Examples range from a closed channel with EW linear bottom slope to a parabolic EW channel with a Gaussian ridge. 
    109    
    110   Below the animation of the test case 7. This test case is a simple linear slope with a mid-depth shelf with an open boundary forced with a sinusoidally varying ssh. 
    111   This test case has been introduced to emulate a typical coastal application with a tidally forced open boundary with an adverse SSH gradient that, when released, creates a surge up the slope. 
    112   The parameters are chosen such that the surge rises above sea-level before falling back and oscillating towards an equilibrium position 
    113  
    114   .. image:: _static/wad_testcase_7.gif 
     146--- 
     147 
     148.. figure:: _static/wad_testcase_7.gif 
     149   :width: 200px 
     150   :align: right 
     151 
     152   .. 
     153 
     154| A set of simple closed basin geometries for testing the Wetting and drying capabilities. 
     155  Examples range from a closed channel with EW linear bottom slope to 
     156  a parabolic EW channel with a Gaussian ridge. 
     157| Here the animation of the test case 7. 
     158  This test case is a simple linear slope with a mid-depth shelf with 
     159  an open boundary forced with a sinusoidally varying ssh. 
     160  This test case has been introduced to emulate a typical coastal application with 
     161  a tidally forced open boundary with an adverse SSH gradient that, 
     162  when released, creates a surge up the slope. 
     163  The parameters are chosen such that 
     164  the surge rises above sea-level before falling back and oscillating towards an equilibrium position. 
    115165 
    116166CANAL 
    117 ===== 
    118  
    119   East-west periodic canal of variable size with several initial states and associated geostrophic currents (zonal jets or vortex). 
    120  
    121   .. image::_static/CANAL_image.gif 
     167----- 
     168 
     169.. figure:: _static/CANAL_image.gif 
     170   :width: 200px 
     171   :align: left 
     172 
     173   .. 
     174 
     175East-west periodic canal of variable size with several initial states and 
     176associated geostrophic currents (zonal jets or vortex). 
    122177 
    123178ICE_ADV2D 
    124 ========= 
    125    
    126   This test case illustrates the advection of an ice patch across an East/West and North/South periodic channel 
    127   over a slab ocean (i.e. one ocean layer). 
     179--------- 
     180 
     181| This test case illustrates the advection of an ice patch across 
     182  an East/West and North/South periodic channel over a slab ocean (i.e. one ocean layer). 
    128183  The configuration is similar to ICE_AGRIF, except for the AGRIF zoom. 
    129   The purpose of this configuration is to test the advection schemes available in the sea-ice code 
     184| The purpose of this configuration is to test the advection schemes available in the sea-ice code 
    130185  (for now, Prather and Ultimate-Macho from 1st to 5th order), 
    131186  especially the occurence of overshoots in ice thickness 
    132    
    133187 
    134188ICE_ADV1D 
    135 ========= 
    136    
    137   This experiment is the classical Schar & Smolarkiewicz (1996) test case :cite:`SCHAR1996`, 
    138   which has been used in :cite:`LIPSCOMB2004`, 
    139   and in which very specific shapes of ice concentration, thickness and volume converge toward the center of a basin. 
     189--------- 
     190 
     191| This experiment is the classical :cite:`SCHAR1996` test case , 
     192  which has been used in :cite:`LIPSCOMB2004`, and in which very specific shapes of ice concentration, 
     193  thickness and volume converge toward the center of a basin. 
    140194  Convergence is unidirectional (in x) while fields are homogeneous in y. 
    141   The purpose of this configuration is to test the caracteristics of advection schemes available in the sea-ice code 
     195| The purpose of this configuration is to 
     196  test the caracteristics of advection schemes available in the sea-ice code 
    142197  (for now, Prather and Ultimate-Macho from 1st to 5th order), 
    143   especially the constitency between concentration, thickness and volume, and the preservation of initial shapes.   
    144  
    145 References 
    146 ========== 
    147  
    148 .. bibliography:: test_cases.bib 
    149    :all: 
    150    :style: unsrt 
    151    :labelprefix: T 
     198  especially the constitency between concentration, thickness and volume, 
     199  and the preservation of initial shapes. 
     200 
     201.. rubric:: References 
     202 
     203.. bibliography:: tests.bib 
     204   :all: 
     205   :style: unsrt 
     206   :labelprefix: T 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/STATION_ASF/MY_SRC/diawri.F90

    r11637 r11831  
    1717   !!                 ! 2005-11  (V. Garnier) Surface pressure gradient organization 
    1818   !!            3.2  ! 2008-11  (B. Lemaire) creation from old diawri 
     19   !!            3.7  ! 2014-01  (G. Madec) remove eddy induced velocity from no-IOM output 
     20   !!                 !                     change name of output variables in dia_wri_state 
    1921   !!---------------------------------------------------------------------- 
    2022 
     
    2729   USE phycst         ! physical constants 
    2830   USE dianam         ! build name of file (routine) 
    29    !LB:USE diahth         ! thermocline diagnostics 
    30    USE zdf_oce        ! ocean vertical physics 
    3131   USE sbc_oce        ! Surface boundary condition: ocean fields 
    32    !LB:USE sbc_ice        ! Surface boundary condition: ice fields 
    33    !LB:USE sbcssr         ! restoring term toward SST/SSS climatology 
    34    !LB:USE zdfmxl         ! mixed layer 
    35    !LB:USE zdfddm         ! vertical  physics: double diffusion 
    3632   ! 
    3733   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
     
    9894      ENDIF 
    9995      ! 
     96      CALL iom_put(  "sst", sst_m(:,:) )    ! bulk surface temperature 
     97      CALL iom_put(  "sss", sss_m(:,:) )    ! surface salinity 
     98      ! 
     99      CALL iom_put(  "ssu", ssu_m(:,:) )    ! ocean surface current along i-axis 
     100      CALL iom_put(  "ssv", ssv_m(:,:) )    ! ocean surface current along j-axis 
     101      ! 
    100102   END SUBROUTINE dia_wri 
    101103 
     
    107109   INTEGER FUNCTION dia_wri_alloc() 
    108110      !!---------------------------------------------------------------------- 
    109       INTEGER :: ierr 
    110       !!---------------------------------------------------------------------- 
    111       ! 
    112       ALLOCATE( ndex_hT(jpi*jpj), ndex_hU(jpi*jpj), ndex_hV(jpi*jpj), STAT=dia_wri_alloc ) 
     111      INTEGER, DIMENSION(2) :: ierr 
     112      !!---------------------------------------------------------------------- 
     113      ierr = 0 
     114      ALLOCATE( ndex_hT(jpi*jpj) , ndex_T(jpi*jpj*jpk) ,     & 
     115         &      ndex_hU(jpi*jpj) , ndex_U(jpi*jpj*jpk) ,     & 
     116         &      ndex_hV(jpi*jpj) , ndex_V(jpi*jpj*jpk) , STAT=ierr(1) ) 
     117         ! 
     118      dia_wri_alloc = MAXVAL(ierr) 
    113119      CALL mpp_sum( 'diawri', dia_wri_alloc ) 
    114120      ! 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/STATION_ASF/MY_SRC/nemogcm.F90

    r11637 r11831  
    55   !!====================================================================== 
    66   !! History :  3.6  ! 2011-11  (S. Alderson, G. Madec) original code 
    7    !!             -   ! 2013-06  (I. Epicoco, S. Mocavero, CMCC) nemo_northcomms: setup avoiding MPI communication  
     7   !!             -   ! 2013-06  (I. Epicoco, S. Mocavero, CMCC) nemo_northcomms: setup avoiding MPI communication 
    88   !!             -   ! 2014-12  (G. Madec) remove KPP scheme and cross-land advection (cla) 
    99   !!            4.0  ! 2016-10  (G. Madec, S. Flavoni)  domain configuration / user defined interface 
     
    1111 
    1212   !!---------------------------------------------------------------------- 
    13    !!   nemo_gcm      : solve ocean dynamics, tracer, biogeochemistry 
     13   !!   nemo_gcm      : solve ocean dynamics, tracer, biogeochemistry and/or sea-ice 
    1414   !!   nemo_init     : initialization of the NEMO system 
    1515   !!   nemo_ctl      : initialisation of the contol print 
     
    1717   !!   nemo_alloc    : dynamical allocation 
    1818   !!---------------------------------------------------------------------- 
    19    USE step_oce       ! module used in the ocean time stepping module 
     19   USE step_oce       ! module used in the ocean time stepping module (step.F90) 
    2020   USE sbc_oce        ! surface boundary condition: ocean 
    2121   USE phycst         ! physical constant                  (par_cst routine) 
     
    2626   USE restart        ! open  restart file 
    2727   !LB:USE step           ! NEMO time-stepping                 (stp     routine) 
    28    !LB:USE cpl_oasis3     ! 
    2928   USE c1d            ! 1D configuration 
    3029   USE step_c1d       ! Time stepping loop for the 1D configuration 
    3130   USE sbcssm         ! 
    32    !LB:USE icbini         ! handle bergs, initialisation 
    33    !LB:USE icbstp         ! handle bergs, calving, themodynamics and transport 
    34    !LB:USE bdyini         ! open boundary cond. setting       (bdy_init routine). mandatory for sea-ice 
    35    !LB:USE bdydta         ! open boundary cond. setting   (bdy_dta_init routine). mandatory for sea-ice 
    3631   ! 
    3732   USE lib_mpp        ! distributed memory computing 
    3833   USE mppini         ! shared/distributed memory setting (mpp_init routine) 
    39    !LB:USE lbcnfd  , ONLY : isendto, nsndto, nfsloop, nfeloop   ! Setup of north fold exchanges  
    4034   USE lib_fortran    ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined) 
    4135#if defined key_iomput 
     
    5246 
    5347   !!---------------------------------------------------------------------- 
    54    !! NEMO/SAS 4.0 , NEMO Consortium (2018) 
    55    !! $Id: nemogcm.F90 10601 2019-01-28 20:53:01Z acc $ 
     48   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
     49   !! $Id: nemogcm.F90 11536 2019-09-11 13:54:18Z smasson $ 
    5650   !! Software governed by the CeCILL license (see ./LICENSE) 
    5751   !!---------------------------------------------------------------------- 
     
    7367      !!---------------------------------------------------------------------- 
    7468      INTEGER ::   istp   ! time step index 
     69      REAL(wp)::   zstptiming   ! elapsed time for 1 time step 
    7570      !!---------------------------------------------------------------------- 
    7671      ! 
     
    9994         ! 
    10095         DO WHILE( istp <= nitend .AND. nstop == 0 ) 
    101 #if defined key_mpp_mpi 
     96 
    10297            ncom_stp = istp 
    103             IF ( istp == ( nit000 + 1 ) ) elapsed_time = MPI_Wtime() 
    104             IF ( istp ==         nitend ) elapsed_time = MPI_Wtime() - elapsed_time 
    105 #endif 
    106             CALL stp        ( istp )  
     98            IF( ln_timing ) THEN 
     99               zstptiming = MPI_Wtime() 
     100               IF ( istp == ( nit000 + 1 ) ) elapsed_time = zstptiming 
     101               IF ( istp ==         nitend ) elapsed_time = zstptiming - elapsed_time 
     102            ENDIF 
     103 
     104            CALL stp        ( istp ) 
    107105            istp = istp + 1 
     106 
     107            IF( lwp .AND. ln_timing )   WRITE(numtime,*) 'timing step ', istp-1, ' : ', MPI_Wtime() - zstptiming 
     108 
    108109         END DO 
    109110         ! 
     
    111112         ! 
    112113         DO WHILE( istp <= nitend .AND. nstop == 0 ) 
    113             CALL stp_diurnal( istp )   ! time step only the diurnal SST  
     114            CALL stp_diurnal( istp )   ! time step only the diurnal SST 
    114115            istp = istp + 1 
    115116         END DO 
     
    125126      ! 
    126127      IF( nstop /= 0 .AND. lwp ) THEN        ! error print 
    127          WRITE(numout,cform_err) 
    128          WRITE(numout,*) '   ==>>>   nemo_gcm: a total of ', nstop, ' errors have been found' 
    129          WRITE(numout,*) 
     128         WRITE(ctmp1,*) '   ==>>>   nemo_gcm: a total of ', nstop, ' errors have been found' 
     129         CALL ctl_stop( ctmp1 ) 
    130130      ENDIF 
    131131      ! 
     
    135135      ! 
    136136#if defined key_iomput 
    137                                     CALL xios_finalize  ! end mpp communications with xios 
     137      CALL xios_finalize  ! end mpp communications with xios 
    138138#else 
    139       IF( lk_mpp   ) THEN   ;   CALL mppstop( ldfinal = .TRUE. )   ! end mpp communications 
     139      IF( lk_mpp   ) THEN   ;   CALL mppstop      ! end mpp communications 
    140140      ENDIF 
    141141#endif 
     
    143143      IF(lwm) THEN 
    144144         IF( nstop == 0 ) THEN   ;   STOP 0 
    145          ELSE                    ;   STOP 999 
     145         ELSE                    ;   STOP 123 
    146146         ENDIF 
    147147      ENDIF 
     
    156156      !! ** Purpose :   initialization of the NEMO GCM 
    157157      !!---------------------------------------------------------------------- 
    158       INTEGER  ::   ji                 ! dummy loop indices 
    159       INTEGER  ::   ios, ilocal_comm   ! local integers 
    160       CHARACTER(len=120), DIMENSION(60) ::   cltxt, cltxt2, clnam 
     158      INTEGER ::   ios, ilocal_comm   ! local integers 
    161159      !! 
    162160      NAMELIST/namctl/ ln_ctl   , sn_cfctl, nn_print, nn_ictls, nn_ictle,   & 
     
    166164      !!---------------------------------------------------------------------- 
    167165      ! 
    168       cltxt  = '' 
    169       cltxt2 = '' 
    170       clnam  = ''   
    171166      cxios_context = 'nemo' 
    172167      ! 
    173       !                             ! Open reference namelist and configuration namelist files 
    174       CALL ctl_opn( numnam_ref, 'namelist_ref', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    175       CALL ctl_opn( numnam_cfg, 'namelist_cfg', 'OLD', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
     168      !                             !-------------------------------------------------! 
     169      !                             !     set communicator & select the local rank    ! 
     170      !                             !  must be done as soon as possible to get narea  ! 
     171      !                             !-------------------------------------------------! 
     172      ! 
     173#if defined key_iomput 
     174      IF( Agrif_Root() ) THEN 
     175         CALL xios_initialize( "for_xios_mpi_id", return_comm=ilocal_comm )   ! nemo local communicator given by xios 
     176      ENDIF 
     177      CALL mpp_start( ilocal_comm ) 
     178#else 
     179      CALL mpp_start( ) 
     180#endif 
     181      ! 
     182      narea = mpprank + 1               ! mpprank: the rank of proc (0 --> mppsize -1 ) 
     183      lwm = (narea == 1)                ! control of output namelists 
     184      ! 
     185      !                             !---------------------------------------------------------------! 
     186      !                             ! Open output files, reference and configuration namelist files ! 
     187      !                             !---------------------------------------------------------------! 
     188      ! 
     189      ! open ocean.output as soon as possible to get all output prints (including errors messages) 
     190      IF( lwm )   CALL ctl_opn(     numout,        'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     191      ! open reference and configuration namelist files 
     192      CALL ctl_opn( numnam_ref,        'namelist_ref',     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     193      CALL ctl_opn( numnam_cfg,        'namelist_cfg',     'OLD', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     194      IF( lwm )   CALL ctl_opn(     numond, 'output.namelist.dyn', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     195      ! open /dev/null file to be able to supress output write easily 
     196      CALL ctl_opn(     numnul,           '/dev/null', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE. ) 
     197      ! 
     198      !                             !--------------------! 
     199      !                             ! Open listing units !  -> need ln_ctl from namctl to define lwp 
     200      !                             !--------------------! 
    176201      ! 
    177202      REWIND( numnam_ref )              ! Namelist namctl in reference namelist 
    178203      READ  ( numnam_ref, namctl, IOSTAT = ios, ERR = 901 ) 
    179 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namctl in reference namelist', .TRUE. ) 
     204901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namctl in reference namelist' ) 
    180205      REWIND( numnam_cfg )              ! Namelist namctl in confguration namelist 
    181206      READ  ( numnam_cfg, namctl, IOSTAT = ios, ERR = 902 ) 
    182 902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namctl in configuration namelist', .TRUE. ) 
    183       ! 
    184       REWIND( numnam_ref )              ! Namelist namcfg in reference namelist 
    185       READ  ( numnam_ref, namcfg, IOSTAT = ios, ERR = 903 ) 
    186 903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namcfg in reference namelist', .TRUE. ) 
    187       REWIND( numnam_cfg )              ! Namelist namcfg in confguration namelist 
    188       READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
    189 904   IF( ios >  0 )   CALL ctl_nam ( ios , 'namcfg in configuration namelist', .TRUE. )    
    190  
    191       !                             !--------------------------! 
    192       !                             !  Set global domain size  !   (control print return in cltxt2) 
    193       !                             !--------------------------! 
    194       IF( ln_read_cfg ) THEN              ! Read sizes in domain configuration file 
    195          CALL domain_cfg ( cltxt2,        cn_cfg, nn_cfg, jpiglo, jpjglo, jpkglo, jperio ) 
    196          ! 
    197       ELSE                                ! user-defined namelist 
    198          CALL usr_def_nam( cltxt2, clnam, cn_cfg, nn_cfg, jpiglo, jpjglo, jpkglo, jperio ) 
    199       ENDIF 
    200       ! 
    201       ! 
    202       !                             !--------------------------------------------! 
    203       !                             !  set communicator & select the local node  ! 
    204       !                             !  NB: mynode also opens output.namelist.dyn ! 
    205       !                             !      on unit number numond on first proc   ! 
    206       !                             !--------------------------------------------! 
    207 #if defined key_iomput 
    208       IF( Agrif_Root() ) THEN 
    209             CALL xios_initialize( "for_xios_mpi_id",return_comm=ilocal_comm )    ! nemo local communicator given by xios 
    210       ENDIF 
    211       ! Nodes selection (control print return in cltxt) 
    212       narea = mynode( cltxt, 'output.namelist.dyn', numnam_ref, numnam_cfg, numond , nstop, ilocal_comm ) 
    213 #else 
    214          ilocal_comm = 0                                    ! Nodes selection (control print return in cltxt) 
    215          narea = mynode( cltxt, 'output.namelist.dyn', numnam_ref, numnam_cfg, numond , nstop ) 
    216 #endif 
    217  
    218       narea = narea + 1                                     ! mynode return the rank of proc (0 --> jpnij -1 ) 
    219  
    220       IF( sn_cfctl%l_config ) THEN 
    221          ! Activate finer control of report outputs 
    222          ! optionally switch off output from selected areas (note this only 
    223          ! applies to output which does not involve global communications) 
    224          IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax  ) .OR. & 
    225            & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) )    & 
    226            &   CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 
    227       ELSE 
    228          ! Use ln_ctl to turn on or off all options. 
    229          CALL nemo_set_cfctl( sn_cfctl, ln_ctl, .TRUE. ) 
    230       ENDIF 
    231  
    232       lwm = (narea == 1)                                    ! control of output namelists 
    233       lwp = (narea == 1) .OR. ln_ctl                        ! control of all listing output print 
    234  
    235       IF(lwm) THEN               ! write merged namelists from earlier to output namelist  
    236          !                       ! now that the file has been opened in call to mynode.  
    237          !                       ! NB: nammpp has already been written in mynode (if lk_mpp_mpi) 
    238          WRITE( numond, namctl ) 
    239          WRITE( numond, namcfg ) 
    240          IF( .NOT.ln_read_cfg ) THEN 
    241             DO ji = 1, SIZE(clnam) 
    242                IF( TRIM(clnam(ji)) /= '' )   WRITE(numond, * ) clnam(ji)     ! namusr_def print 
    243             END DO 
    244          ENDIF 
    245       ENDIF 
    246  
    247       IF(lwp) THEN                            ! open listing units 
    248          ! 
    249          CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE., narea ) 
     207902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namctl in configuration namelist' ) 
     208      ! 
     209      lwp = (narea == 1) .OR. ln_ctl    ! control of all listing output print 
     210      ! 
     211      IF(lwp) THEN                      ! open listing units 
     212         ! 
     213         IF( .NOT. lwm )   &            ! alreay opened for narea == 1 
     214            &            CALL ctl_opn( numout, 'ocean.output', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, -1, .FALSE., narea ) 
    250215         ! 
    251216         WRITE(numout,*) 
    252          WRITE(numout,*) '   CNRS - NERC - Met OFFICE - MERCATOR-ocean - INGV - CMCC' 
     217         WRITE(numout,*) '   CNRS - NERC - Met OFFICE - MERCATOR-ocean - CMCC' 
    253218         WRITE(numout,*) '                       NEMO team' 
    254219         WRITE(numout,*) '            Ocean General Circulation Model' 
    255220         WRITE(numout,*) '                NEMO version 4.0  (2019) ' 
    256          WRITE(numout,*) '                        SASC1D ' 
     221         WRITE(numout,*) '                      STATION_ASF ' 
    257222         WRITE(numout,*) "           ._      ._      ._      ._      ._    " 
    258223         WRITE(numout,*) "       _.-._)`\_.-._)`\_.-._)`\_.-._)`\_.-._)`\_ " 
     
    269234         WRITE(numout,*) "     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ " 
    270235         WRITE(numout,*) 
    271           
    272          DO ji = 1, SIZE(cltxt) 
    273             IF( TRIM(cltxt (ji)) /= '' )   WRITE(numout,*) TRIM(cltxt(ji))    ! control print of mynode 
    274          END DO 
    275          WRITE(numout,*) 
    276          WRITE(numout,*) 
    277          DO ji = 1, SIZE(cltxt2) 
    278             IF( TRIM(cltxt2(ji)) /= '' )   WRITE(numout,*) TRIM(cltxt2(ji))   ! control print of domain size 
    279          END DO 
    280236         ! 
    281237         WRITE(numout,cform_aaa)                                        ! Flag AAAAAAA 
    282238         ! 
    283239      ENDIF 
    284       ! open /dev/null file to be able to supress output write easily 
    285       CALL ctl_opn( numnul, '/dev/null', 'REPLACE', 'FORMATTED', 'SEQUENTIAL', -1, 6, .FALSE. ) 
    286       ! 
    287       !                                      ! Domain decomposition 
    288       CALL mpp_init                          ! MPP 
     240      ! 
     241      ! finalize the definition of namctl variables 
     242      IF( sn_cfctl%l_config ) THEN 
     243         ! Activate finer control of report outputs 
     244         ! optionally switch off output from selected areas (note this only 
     245         ! applies to output which does not involve global communications) 
     246         IF( ( narea < sn_cfctl%procmin .OR. narea > sn_cfctl%procmax  ) .OR. & 
     247            & ( MOD( narea - sn_cfctl%procmin, sn_cfctl%procincr ) /= 0 ) )    & 
     248            &   CALL nemo_set_cfctl( sn_cfctl, .FALSE., .FALSE. ) 
     249      ELSE 
     250         ! Use ln_ctl to turn on or off all options. 
     251         CALL nemo_set_cfctl( sn_cfctl, ln_ctl, .TRUE. ) 
     252      ENDIF 
     253      ! 
     254      IF(lwm) WRITE( numond, namctl ) 
     255      ! 
     256      !                             !------------------------------------! 
     257      !                             !  Set global domain size parameters ! 
     258      !                             !------------------------------------! 
     259      ! 
     260      REWIND( numnam_ref )              ! Namelist namcfg in reference namelist 
     261      READ  ( numnam_ref, namcfg, IOSTAT = ios, ERR = 903 ) 
     262903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namcfg in reference namelist' ) 
     263      REWIND( numnam_cfg )              ! Namelist namcfg in confguration namelist 
     264      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
     265904   IF( ios >  0 )   CALL ctl_nam ( ios , 'namcfg in configuration namelist' ) 
     266      ! 
     267      IF( ln_read_cfg ) THEN            ! Read sizes in domain configuration file 
     268         CALL domain_cfg ( cn_cfg, nn_cfg, jpiglo, jpjglo, jpkglo, jperio ) 
     269      ELSE                              ! user-defined namelist 
     270         CALL usr_def_nam( cn_cfg, nn_cfg, jpiglo, jpjglo, jpkglo, jperio ) 
     271      ENDIF 
     272      ! 
     273      IF(lwm)   WRITE( numond, namcfg ) 
     274      ! 
     275      !                             !-----------------------------------------! 
     276      !                             ! mpp parameters and domain decomposition ! 
     277      !                             !-----------------------------------------! 
     278      CALL mpp_init 
    289279 
    290280      ! Now we know the dimensions of the grid and numout has been set: we can allocate arrays 
     
    301291      IF( ln_timing    )   CALL timing_start( 'nemo_init') 
    302292      ! 
    303                            CALL     phy_cst         ! Physical constants 
    304                            CALL     eos_init        ! Equation of state 
    305 !LB:                           CALL dom_init('SAS') ! Domain 
    306       IF( lk_c1d       )   CALL     c1d_init        ! 1D column configuration !LB 
    307                            CALL     dom_init("OPA") ! Domain 
     293      CALL     phy_cst         ! Physical constants 
     294      CALL     eos_init        ! Equation of state 
     295      IF( lk_c1d       )   CALL     c1d_init        ! 1D column configuration 
     296      CALL     dom_init("OPA") ! Domain 
    308297      IF( ln_ctl       )   CALL prt_ctl_init        ! Print control 
    309       !PRINT *, 'LOLO/nemogcm.F90: after prt_ctl_init!';  STOP 
    310        
    311                            CALL day_init        ! model calendar (using both namelist and restart infos) 
     298 
     299      CALL day_init        ! model calendar (using both namelist and restart infos) 
    312300      IF( ln_rstart )      CALL rst_read_open 
    313301 
    314       !                                      ! external forcing  
    315                            CALL sbc_init        ! Forcings : surface module  
    316  
    317       ! ==> clem: open boundaries init. is mandatory for sea-ice because ice BDY is not decoupled from   
    318       !           the environment of ocean BDY. Therefore bdy is called in both OPA and SAS modules.  
    319       !           This is not clean and should be changed in the future.  
    320                            !CALL bdy_init 
     302      !                                      ! external forcing 
     303      CALL     sbc_init    ! surface boundary conditions (including sea-ice) 
     304 
    321305      ! 
    322306      IF(lwp) WRITE(numout,cform_aaa)           ! Flag AAAAAAA 
     
    333317      !! ** Purpose :   control print setting 
    334318      !! 
    335       !! ** Method  : - print namctl information and check some consistencies 
     319      !! ** Method  : - print namctl and namcfg information and check some consistencies 
    336320      !!---------------------------------------------------------------------- 
    337321      ! 
     
    349333         WRITE(numout,*) '                              sn_cfctl%l_mppout  = ', sn_cfctl%l_mppout 
    350334         WRITE(numout,*) '                              sn_cfctl%l_mpptop  = ', sn_cfctl%l_mpptop 
    351          WRITE(numout,*) '                              sn_cfctl%procmin   = ', sn_cfctl%procmin   
    352          WRITE(numout,*) '                              sn_cfctl%procmax   = ', sn_cfctl%procmax   
    353          WRITE(numout,*) '                              sn_cfctl%procincr  = ', sn_cfctl%procincr  
    354          WRITE(numout,*) '                              sn_cfctl%ptimincr  = ', sn_cfctl%ptimincr  
     335         WRITE(numout,*) '                              sn_cfctl%procmin   = ', sn_cfctl%procmin 
     336         WRITE(numout,*) '                              sn_cfctl%procmax   = ', sn_cfctl%procmax 
     337         WRITE(numout,*) '                              sn_cfctl%procincr  = ', sn_cfctl%procincr 
     338         WRITE(numout,*) '                              sn_cfctl%ptimincr  = ', sn_cfctl%ptimincr 
    355339         WRITE(numout,*) '      level of print                  nn_print   = ', nn_print 
    356340         WRITE(numout,*) '      Start i indice for SUM control  nn_ictls   = ', nn_ictls 
     
    467451      USE diawri    , ONLY : dia_wri_alloc 
    468452      USE dom_oce   , ONLY : dom_oce_alloc 
    469       !USE bdy_oce   , ONLY : ln_bdy, bdy_oce_alloc 
    470       USE oce       ! mandatory for sea-ice because needed for bdy arrays 
    471453      ! 
    472454      INTEGER :: ierr 
    473455      !!---------------------------------------------------------------------- 
    474456      ! 
    475       ierr =        dia_wri_alloc() 
    476       ierr = ierr + dom_oce_alloc()          ! ocean domain 
    477       ierr = ierr + oce_alloc    ()          ! (tsn...) needed for agrif and/or SI3 and bdy 
    478       !ierr = ierr + bdy_oce_alloc()          ! bdy masks (incl. initialization) 
     457      ierr =        oce_alloc    ()    ! ocean 
     458      ierr = ierr + dia_wri_alloc() 
     459      ierr = ierr + dom_oce_alloc()    ! ocean domain 
    479460      ! 
    480461      CALL mpp_sum( 'nemogcm', ierr ) 
     
    482463      ! 
    483464   END SUBROUTINE nemo_alloc 
     465 
    484466 
    485467   SUBROUTINE nemo_set_cfctl(sn_cfctl, setto, for_all ) 
     
    512494   !!====================================================================== 
    513495END MODULE nemogcm 
    514  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/STATION_ASF/MY_SRC/sbcssm.F90

    r11637 r11831  
    188188      REWIND( numnam_ref )              ! Namelist namsbc_sas in reference namelist : Input fields 
    189189      READ  ( numnam_ref, namsbc_sas, IOSTAT = ios, ERR = 901) 
    190 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namsbc_sas in reference namelist', lwp ) 
     190901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namsbc_sas in reference namelist' ) 
    191191      REWIND( numnam_cfg )              ! Namelist namsbc_sas in configuration namelist : Input fields 
    192192      READ  ( numnam_cfg, namsbc_sas, IOSTAT = ios, ERR = 902 ) 
    193 902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namsbc_sas in configuration namelist', lwp ) 
     193902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namsbc_sas in configuration namelist' ) 
    194194      IF(lwm) WRITE ( numond, namsbc_sas ) 
    195195      !            
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/STATION_ASF/MY_SRC/usrdef_nam.F90

    r11637 r11831  
    1515   !!   usr_def_hgr   : initialize the horizontal mesh  
    1616   !!---------------------------------------------------------------------- 
    17    USE dom_oce  , ONLY: nimpp, njmpp             ! ocean space and time domain 
    18    USE dom_oce  , ONLY: ln_zco, ln_zps, ln_sco   ! flag of type of coordinate 
     17   USE dom_oce  , ONLY: nimpp, njmpp       ! ocean space and time domain 
     18   USE dom_oce  , ONLY: ln_zco, ln_zps, ln_sco   ! flag of type of coordinate !#LB??? 
    1919   USE par_oce        ! ocean space and time domain 
    2020   USE phycst         ! physical constants 
     
    2929 
    3030   !                              !!* namusr_def namelist *!! 
    31    LOGICAL, PUBLIC ::   ln_bench   ! =T benchmark test with gyre: the gridsize is constant (no need to adjust timestep or viscosity) 
    32    INTEGER, PUBLIC ::   nn_GYRE    ! 1/nn_GYRE = the resolution chosen in degrees and thus defining the horizontal domain size 
    3331   REAL(wp), PUBLIC::   rn_dept1   ! Depth (m) at which the SST is taken/measured == depth of first T point! 
    3432 
    3533   !!---------------------------------------------------------------------- 
    3634   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
    37    !! $Id: usrdef_nam.F90 10072 2018-08-28 15:21:50Z nicolasmartin $ 
     35   !! $Id: usrdef_nam.F90 11536 2019-09-11 13:54:18Z smasson $  
    3836   !! Software governed by the CeCILL license (see ./LICENSE) 
    3937   !!---------------------------------------------------------------------- 
    4038CONTAINS 
    4139 
    42    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 ) 
    4341      !!---------------------------------------------------------------------- 
    4442      !!                     ***  ROUTINE dom_nam  *** 
     
    4846      !! ** Method  :   read in namusr_def containing all the user specific namelist parameter 
    4947      !! 
    50       !!                Here C1D configuration 
     48      !!                Here STATION_ASF configuration 
    5149      !! 
    5250      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5351      !!---------------------------------------------------------------------- 
    54       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    55       CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    56       INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
    57       INTEGER                       , INTENT(out) ::   kpi, kpj, kpk   ! global domain sizes  
    58       INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
     52      CHARACTER(len=*), INTENT(out) ::   cd_cfg          ! configuration name 
     53      INTEGER         , INTENT(out) ::   kk_cfg          ! configuration resolution 
     54      INTEGER         , INTENT(out) ::   kpi, kpj, kpk   ! global domain sizes  
     55      INTEGER         , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5956      ! 
    60       INTEGER ::   ios, ii   ! Local integer 
     57      INTEGER ::   ios   ! Local integer 
    6158      !! 
    6259      NAMELIST/namusr_def/ rn_dept1 
    6360      !!---------------------------------------------------------------------- 
    6461      ! 
    65       ii = 1 
    66       ! 
    6762      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6863      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    69 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     64902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    7065      ! 
    71       WRITE( ldnam(:), namusr_def ) 
     66      IF(lwm)   WRITE( numond, namusr_def ) 
    7267      ! 
    7368      cd_cfg = 'STATION_ASF'               ! name & resolution (not used) 
     
    7974      kpk = 1 
    8075      ! 
    81       !                             ! control print 
    82       WRITE(ldtxt(ii),*) '   '                                                                            ;   ii = ii + 1 
    83       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'     ;   ii = ii + 1 
    84       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                   ;   ii = ii + 1 
    85       WRITE(ldtxt(ii),*) '   Namelist namusr_def : C1 case'                                               ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) '      type of vertical coordinate : '                                           ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '         z-coordinate flag                     ln_zco = ', ln_zco               ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '         z-partial-step coordinate flag        ln_zps = ', ln_zps               ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '         s-coordinate flag                     ln_sco = ', ln_sco               ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '      C1D domain = 3 x 3 x 1 grid-points                '                       ;   ii = ii + 1 
    91       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo = ', kpi                  ;   ii = ii + 1 
    92       WRITE(ldtxt(ii),*) '                                               jpjglo = ', kpj                  ;   ii = ii + 1 
    93       WRITE(ldtxt(ii),*) '                                               jpkglo = ', kpk                  ;   ii = ii + 1 
    94  
    95       ! 
    9676      !                             ! Set the lateral boundary condition of the global domain 
    9777      kperio =  7                   ! C1D configuration : 3x3 basin with cyclic Est-West and Norht-South condition 
    9878      ! 
    99       WRITE(ldtxt(ii),*) '   Lateral boundary condition of the global domain'                           ;   ii = ii + 1 
    100       WRITE(ldtxt(ii),*) '      C1D : closed basin                 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 : STATION_ASF case' 
     85         WRITE(numout,*) '         Detpth of first T-point (bulk SST): rn_dept1 = ', rn_dept1 
     86         WRITE(numout,*) '         jpiglo, jpjglo  = ', kpi, kpj 
     87         WRITE(numout,*) '      number of model levels                              kpk = ', kpk 
     88         WRITE(numout,*) '   ' 
     89         WRITE(numout,*) '   Lateral b.c. of the domain set to       jperio = ', kperio 
     90      ENDIF 
    10191      ! 
    10292   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/STATION_ASF/MY_SRC/usrdef_zgr.F90

    r11637 r11831  
    2828   PUBLIC   usr_def_zgr   ! called by domzgr.F90 
    2929 
    30    !! * Substitutions 
    31 #  include "vectopt_loop_substitute.h90" 
    3230   !!---------------------------------------------------------------------- 
    3331   !! NEMO/OCE 4.0 , NEMO Consortium (2018) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/VORTEX/EXPREF/1_namelist_cfg

    r10075 r11831  
    272272!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    273273!!   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 !!   namdct       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) 
    277277!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    278278!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/VORTEX/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/VORTEX/EXPREF/namelist_cfg

    r10075 r11831  
    263263!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    264264!!   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 !!   namdct       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) 
    268268!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    269269!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/VORTEX/MY_SRC/domvvl.F90

    r10572 r11831  
    994994      REWIND( numnam_ref )              ! Namelist nam_vvl in reference namelist :  
    995995      READ  ( numnam_ref, nam_vvl, IOSTAT = ios, ERR = 901) 
    996 901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nam_vvl in reference namelist', lwp ) 
     996901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'nam_vvl in reference namelist' ) 
    997997      REWIND( numnam_cfg )              ! Namelist nam_vvl in configuration namelist : Parameters of the run 
    998998      READ  ( numnam_cfg, nam_vvl, IOSTAT = ios, ERR = 902 ) 
    999 902   IF( ios >  0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist', lwp ) 
     999902   IF( ios >  0 ) CALL ctl_nam ( ios , 'nam_vvl in configuration namelist' ) 
    10001000      IF(lwm) WRITE ( numond, nam_vvl ) 
    10011001      ! 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/VORTEX/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    4040CONTAINS 
    4141 
    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 ) 
    4343      !!---------------------------------------------------------------------- 
    4444      !!                     ***  ROUTINE dom_nam  *** 
     
    5252      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5353      !!---------------------------------------------------------------------- 
    54       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5554      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5655      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5857      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5958      ! 
    60       INTEGER ::   ios, ii      ! Local integer 
     59      INTEGER ::   ios          ! Local integer 
    6160      REAL(wp)::   zlx, zly, zh ! Local scalars 
    6261      !! 
     
    6463      !!---------------------------------------------------------------------- 
    6564      ! 
    66       ii = 1 
    67       ! 
    6865      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6966      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    70 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     67902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    7168      ! 
    7269#if defined key_agrif  
     
    8077#endif 
    8178      ! 
    82       WRITE( ldnam(:), namusr_def ) 
     79      IF(lwm)   WRITE( numond, namusr_def ) 
    8380      ! 
    8481      cd_cfg = 'VORTEX'             ! name & resolution (not used) 
    85       kk_cfg = INT( rn_dx ) 
     82      kk_cfg = nINT( rn_dx ) 
    8683      ! 
    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 
    9388         kpi  = nbcellsx + 2 + 2*nbghostcells 
    9489         kpj  = nbcellsy + 2 + 2*nbghostcells 
    9590      ENDIF 
    96 #endif 
     91      kpk = NINT( 5000._wp / rn_dz ) + 1 
    9792      ! 
    9893      zlx = (kpi-2)*rn_dx*1.e-3 
    9994      zly = (kpj-2)*rn_dy*1.e-3 
    10095      zh  = (kpk-1)*rn_dz 
    101       !                             ! 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 : VORTEX test case'                                    ;   ii = ii + 1 
    106       WRITE(ldtxt(ii),*) '      horizontal resolution             rn_dx  = ', rn_dx, ' m'               ;   ii = ii + 1 
    107       WRITE(ldtxt(ii),*) '      horizontal resolution             rn_dy  = ', rn_dy, ' m'               ;   ii = ii + 1 
    108       WRITE(ldtxt(ii),*) '      vertical resolution               rn_dz  = ', rn_dz, ' m'               ;   ii = ii + 1 
    109       WRITE(ldtxt(ii),*) '      VORTEX domain: '                                                        ;   ii = ii + 1 
    110       WRITE(ldtxt(ii),*) '         LX [km]: ', zlx                                                      ;   ii = ii + 1 
    111       WRITE(ldtxt(ii),*) '         LY [km]: ', zly                                                      ;   ii = ii + 1 
    112       WRITE(ldtxt(ii),*) '          H [m] : ', zh                                                       ;   ii = ii + 1 
    113       WRITE(ldtxt(ii),*) '      Reference latitude            rn_ppgphi0 = ', rn_ppgphi0                ;   ii = ii + 1 
    114       ! 
    11596      !                             ! Set the lateral boundary condition of the global domain 
    11697      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 
    121116      ! 
    122117   END SUBROUTINE usr_def_nam 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/WAD/EXPREF/context_nemo.xml

    r9930 r11831  
    66<context id="nemo"> 
    77<!-- $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> 
    818<!-- Fields definition --> 
    919    <field_definition src="./field_def_nemo-oce.xml"/>   <!--  NEMO ocean dynamics                     --> 
     
    1828     
    1929    <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"              /> 
    2939    </axis_definition> 
    3040  
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/WAD/EXPREF/namelist_cfg

    r10075 r11831  
    180180&nambdy_dta    !  open boundaries - external data                        
    181181!----------------------------------------------------------------------- 
     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  =  './' 
    182188!              !  file name      ! frequency (hours) ! variable  ! time interp. !  clim   ! 'yearly'/ ! weights  ! rotation ! land/sea mask ! 
    183189!              !                 !  (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'  ,    ''    ,   ''     , '' 
    189193/ 
    190194!----------------------------------------------------------------------- 
     
    417421!!   namdiu       Cool skin and warm layer models                       (default: OFF) 
    418422!!   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 !!   namdct       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) 
    422426!!   nam_diatmb   Top Middle Bottom Output                              (default: OFF) 
    423427!!   nam_dia25h   25h Mean Output                                       (default: OFF) 
     
    439443/ 
    440444!----------------------------------------------------------------------- 
    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 
    443448    nn_dct      = 60       !  time step frequency for transports computing 
    444449    nn_dctwri   = 60       !  time step frequency for transports writing 
  • NEMO/branches/2019/dev_r11085_ASINTER-05_Brodeau_Advanced_Bulk/tests/WAD/MY_SRC/usrdef_nam.F90

    r10074 r11831  
    3939CONTAINS 
    4040 
    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 ) 
    4242      !!---------------------------------------------------------------------- 
    4343      !!                     ***  ROUTINE dom_nam  *** 
     
    5151      !! ** input   : - namusr_def namelist found in namelist_cfg 
    5252      !!---------------------------------------------------------------------- 
    53       CHARACTER(len=*), DIMENSION(:), INTENT(out) ::   ldtxt, ldnam    ! stored print information 
    5453      CHARACTER(len=*)              , INTENT(out) ::   cd_cfg          ! configuration name 
    5554      INTEGER                       , INTENT(out) ::   kk_cfg          ! configuration resolution 
     
    5756      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
    5857      ! 
    59       INTEGER ::   ios, ii   ! Local integer 
     58      INTEGER ::   ios   ! Local integer 
    6059      !! 
    6160      NAMELIST/namusr_def/ rn_dx, rn_dz, nn_wad_test 
    6261      !!---------------------------------------------------------------------- 
    6362      ! 
    64       ii = 1 
    65       ! 
    6663      REWIND( numnam_cfg )          ! Namelist namusr_def (exist in namelist_cfg only) 
    6764      READ  ( numnam_cfg, namusr_def, IOSTAT = ios, ERR = 902 ) 
    68 902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist', .TRUE. ) 
     65902   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namusr_def in configuration namelist' ) 
    6966      ! 
    70       WRITE( ldnam(:), namusr_def ) 
     67      IF(lwm)   WRITE( numond, namusr_def ) 
    7168      ! 
    7269      ! 
     
    7976      kpj = INT(  32.e3 / rn_dx ) + 2 
    8077      kpk = INT(  10.  / rn_dz ) + 1 
    81       ! 
    82       !                             ! control print 
    83       WRITE(ldtxt(ii),*) '   '                                                                          ;   ii = ii + 1 
    84       WRITE(ldtxt(ii),*) 'usr_def_nam  : read the user defined namelist (namusr_def) in namelist_cfg'   ;   ii = ii + 1 
    85       WRITE(ldtxt(ii),*) '~~~~~~~~~~~ '                                                                 ;   ii = ii + 1 
    86       WRITE(ldtxt(ii),*) '   Namelist namusr_def : WAD_TEST_CASES test case'                             ;   ii = ii + 1 
    87       WRITE(ldtxt(ii),*) '      horizontal resolution                    rn_dx  = ', rn_dx, ' meters'   ;   ii = ii + 1 
    88       WRITE(ldtxt(ii),*) '      vertical   resolution                    rn_dz  = ', rn_dz, ' meters'   ;   ii = ii + 1 
    89       WRITE(ldtxt(ii),*) '      WAD_TEST_CASES domain = 52 km  x  34 km x 10 m'                ;   ii = ii + 1 
    90       WRITE(ldtxt(ii),*) '         resulting global domain size :        jpiglo = ', kpi                ;   ii = ii + 1 
    91       WRITE(ldtxt(ii),*) '                                               jpjglo = ', kpj                ;   ii = ii + 1 
    92       WRITE(ldtxt(ii),*) '                                               jpkglo = ', kpk                ;   ii = ii + 1 
    93       ! 
    9478      !                             ! Set the lateral boundary condition of the global domain 
    9579      kperio = 0                    ! WAD_TEST_CASES configuration : closed domain 
    9680      IF( nn_wad_test == 8 ) kperio = 7 ! North-South cyclic test 
    9781      ! 
    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 
    10198      ! 
    10299   END SUBROUTINE usr_def_nam 
Note: See TracChangeset for help on using the changeset viewer.