New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3973 for branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2013-07-12T13:54:28+02:00 (11 years ago)
Author:
clevy
Message:

Configuration setting/Step3, see ticket:#1074

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2013/dev_r3853_CNRS9_ConfSetting/NEMOGCM/NEMO/OPA_SRC/nemogcm.F90

    r3954 r3973  
    225225      CHARACTER(len=80), DIMENSION(16) ::   cltxt 
    226226      !! 
    227       NAMELIST/namctl/ ln_ctl  , nn_print, nn_ictls, nn_ictle,   & 
     227      NAMELIST/namctl/ ln_ctl, nn_print, nn_ictls, nn_ictle,   & 
    228228         &             nn_isplt, nn_jsplt, nn_jctls, nn_jctle,   & 
    229229         &             nn_bench, nn_timing 
     230      NAMELIST/namcfg/ cp_cfg, jp_cfg, jpidta, jpjdta, jpkdta, jpiglo, jpjglo, & 
     231         &             jpizoom, jpjzoom, jperio, jphgr_msh, & 
     232         &             ppglam0, ppgphi0, ppe1_deg, ppe2_deg, ppe1_m, ppe2_m, & 
     233         &             ppsur, ppa0, ppa1, ppkth, ppacr, ppdzmin, pphmax, ldbletanh, & 
     234         &             ppa2, ppkth2, ppacr2 
    230235      !!---------------------------------------------------------------------- 
    231236      ! 
     
    245250902   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namctl in configuration namelist', lwp ) 
    246251      WRITE( numond, namctl ) 
     252 
     253      ! 
     254      REWIND( numnam_ref )              ! Namelist namcfg in reference namelist : Control prints & Benchmark 
     255      READ  ( numnam_ref, namcfg, IOSTAT = ios, ERR = 903 ) 
     256903   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in reference namelist', lwp ) 
     257 
     258      REWIND( numnam_cfg )              ! Namelist namcfg in confguration namelist : Control prints & Benchmark 
     259      READ  ( numnam_cfg, namcfg, IOSTAT = ios, ERR = 904 ) 
     260904   IF( ios /= 0 ) CALL ctl_nam ( ios , 'namcfg in configuration namelist', lwp )    
     261      WRITE( numond, namcfg ) 
    247262      ! 
    248263      !                             !--------------------------------------------! 
     
    399414 
    400415      !                                     ! Misc. options 
    401       IF( nn_cla == 1   )   CALL cla_init       ! Cross Land Advection 
     416      IF( nn_cla == 1 .AND. cp_cfg == 'orca' .AND. jp_cfg == 2 )   CALL cla_init       ! Cross Land Advection 
    402417                            CALL icb_init( rdt, nit000)   ! initialise icebergs instance 
    403418      
     
    460475      jsplt     = nn_jsplt 
    461476      nbench    = nn_bench 
     477 
     478      IF(lwp) THEN                  ! control print 
     479         WRITE(numout,*) 
     480         WRITE(numout,*) 'namcfg  : configuration initialization through namelist read' 
     481         WRITE(numout,*) '~~~~~~~ ' 
     482         WRITE(numout,*) '   Namelist namcfg' 
     483         WRITE(numout,*) '      configuration name              cp_cfg      = ', TRIM(cp_cfg) 
     484         WRITE(numout,*) '      configuration resolution        jp_cfg      = ', jp_cfg 
     485         WRITE(numout,*) '      1st lateral dimension ( >= jpi ) jpidta     = ', jpidta 
     486         WRITE(numout,*) '      2nd    "         "    ( >= jpj ) jpjdta     = ', jpjdta 
     487         WRITE(numout,*) '      3nd    "         "               jpkdta     = ', jpkdta 
     488         WRITE(numout,*) '      1st dimension of global domain in i jpiglo  = ', jpiglo 
     489         WRITE(numout,*) '      2nd    -                  -    in j jpjglo  = ', jpjglo 
     490         WRITE(numout,*) '      left bottom i index of the zoom (in data domain) jpizoom = ', jpizoom 
     491         WRITE(numout,*) '      left bottom j index of the zoom (in data domain) jpizoom = ', jpjzoom 
     492         WRITE(numout,*) '      lateral cond. type (between 0 and 6) jperio = ', jperio    
     493         WRITE(numout,*) '      type of horizontal mesh jphgr_msh           = ', jphgr_msh 
     494         WRITE(numout,*) '      longitude of first raw and column T-point ppglam0 = ', ppglam0 
     495         WRITE(numout,*) '      latitude  of first raw and column T-point ppgphi0 = ', ppgphi0 
     496         WRITE(numout,*) '      zonal      grid-spacing (degrees) ppe1_deg        = ', ppe1_deg 
     497         WRITE(numout,*) '      meridional grid-spacing (degrees) ppe2_deg        = ', ppe2_deg 
     498         WRITE(numout,*) '      zonal      grid-spacing (degrees) ppe1_m          = ', ppe1_m 
     499         WRITE(numout,*) '      meridional grid-spacing (degrees) ppe2_m          = ', ppe2_m 
     500         WRITE(numout,*) '      ORCA r4, r2 and r05 coefficients  ppsur           = ', ppsur 
     501         WRITE(numout,*) '                                        ppa0            = ', ppa0 
     502         WRITE(numout,*) '                                        ppa1            = ', ppa1 
     503         WRITE(numout,*) '                                        ppkth           = ', ppkth 
     504         WRITE(numout,*) '                                        ppacr           = ', ppacr 
     505         WRITE(numout,*) '      Minimum vertical spacing ppdzmin                  = ', ppdzmin 
     506         WRITE(numout,*) '      Maximum depth pphmax                              = ', pphmax 
     507         WRITE(numout,*) '      Use double tanf function for vertical coordinates ldbletanh = ', ldbletanh 
     508         WRITE(numout,*) '      Double tanh function parameters ppa2              = ', ppa2 
     509         WRITE(numout,*) '                                      ppkth2            = ', ppkth2 
     510         WRITE(numout,*) '                                      ppacr2            = ', ppacr2 
     511      ENDIF 
    462512      !                             ! Parameter control 
    463513      ! 
     
    503553         CASE ( 'gyre' )   ;   CALL ctl_warn( ' The Benchmark is activated ' ) 
    504554         CASE DEFAULT      ;   CALL ctl_stop( ' The Benchmark is based on the GYRE configuration:',   & 
    505             &                                 ' key_gyre must be used or set nbench = 0' ) 
     555            &                                 ' cp_cfg = "gyre" in namelist &namcfg or set nbench = 0' ) 
    506556         END SELECT 
    507557      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.