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 10009 for NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/DOM/domain.F90 – NEMO

Ignore:
Timestamp:
2018-07-29T11:23:51+02:00 (6 years ago)
Author:
gm
Message:

#1911 (ENHANCE-04): RK3 branch - step II.1 time-level dimension on ssh

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r9838_ENHANCE04_RK3/src/OCE/DOM/domain.F90

    r10001 r10009  
    1515   !!            3.7  !  2015-11  (G. Madec, A. Coward)  time varying zgr by default 
    1616   !!            4.0  !  2016-10  (G. Madec, S. Flavoni)  domain configuration / user defined interface 
     17   !!            5.0  !  2018-07  (G. Madec)  RK3: add a time-level dimension to time-varying variables 
    1718   !!---------------------------------------------------------------------- 
    1819    
     
    4849   PRIVATE 
    4950 
     51   PUBLIC   dom_nam      ! called by nemogcm.F90 
    5052   PUBLIC   dom_init     ! called by nemogcm.F90 
    5153   PUBLIC   domain_cfg   ! called by nemogcm.F90 
     
    118120      ! 
    119121      CALL dom_glo                     ! global domain versus local domain 
    120       CALL dom_nam                     ! read namelist ( namrun, namdom ) 
    121       ! 
    122       IF( lwxios ) THEN 
    123 !define names for restart write and set core output (restart.F90) 
     122      ! 
     123      IF( lwxios ) THEN                ! define names for restart write and set core output (restart.F90) 
    124124         CALL iom_set_rst_vars(rst_wfields) 
    125125         CALL iom_set_rstw_core(cdstr) 
    126126      ENDIF 
    127 !reset namelist for SAS 
    128       IF(cdstr == 'SAS') THEN 
     127      IF( cdstr == 'SAS' ) THEN        ! reset namelist for SAS 
    129128         IF(lrxios) THEN 
    130129               IF(lwp) write(numout,*) 'Disable reading restart file using XIOS for SAS' 
     
    184183         r1_hu_b = r1_hu_0   ;   r1_hu_n = r1_hu_0   ; r1_hu_a = r1_hu_0   ! 1 / water column 
    185184         r1_hv_b = r1_hv_0   ;   r1_hv_n = r1_hv_0   ; r1_hv_a = r1_hv_0   !       thickness 
    186          ! 
    187185         ! 
    188186      ELSE                       != time varying : initialize before/now/after variables 
     
    307305      ENDIF 
    308306      ! 
    309       REWIND( numnam_ref )              ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep) 
     307      REWIND( numnam_ref )                ! Namelist namdom in reference namelist : space & time domain (bathymetry, mesh, timestep) 
    310308      READ  ( numnam_ref, namdom, IOSTAT = ios, ERR = 903) 
    311309903   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namdom in reference namelist', lwp ) 
    312       REWIND( numnam_cfg )              ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 
     310      REWIND( numnam_cfg )                ! Namelist namdom in configuration namelist : space & time domain (bathymetry, mesh, timestep) 
    313311      READ  ( numnam_cfg, namdom, IOSTAT = ios, ERR = 904 ) 
    314312904   IF( ios >  0 )   CALL ctl_nam ( ios , 'namdom in configuration namelist', lwp ) 
     
    316314      ! 
    317315      IF(lwp) THEN 
    318          WRITE(numout,*) 
    319316         WRITE(numout,*) '   Namelist : namdom   ---   space & time domain' 
    320317         WRITE(numout,*) '      3rd order Runge-Kutta scheme            ln_RK3      = ', ln_RK3 
     
    337334      ENDIF 
    338335      ! 
    339       REWIND( numnam_ref )              ! Namelist namrun in reference namelist : Parameters of the run 
     336      !                                   ! Set the number of time-level 
     337      ! 
     338      IF    ( ln_RK3 ) THEN                  ! two-level time-stepping scheme 
     339         Nt = 2                                    ! number of time-level 
     340         Nbb = 1     ! before=now                  ! time indexes 
     341         Nnn = 1     ! now   (n  ) 
     342         Naa = 2     ! after (n+1) 
     343         ! 
     344      ELSEIF( ln_MLF ) THEN                  ! three-level time-stepping scheme 
     345         Nt = 3                                    ! number of time-level 
     346         Nbb = 1     ! before (n-1) 
     347         Nnn = 2     ! now    (n  ) 
     348         Naa = 3     ! after  (n+1) 
     349      ENDIF 
     350      ! 
     351      REWIND( numnam_ref )                ! Namelist namrun in reference namelist : Parameters of the run 
    340352      READ  ( numnam_ref, namrun, IOSTAT = ios, ERR = 901) 
    341353901   IF( ios /= 0 )   CALL ctl_nam ( ios , 'namrun in reference namelist', lwp ) 
    342       REWIND( numnam_cfg )              ! Namelist namrun in configuration namelist : Parameters of the run 
     354      REWIND( numnam_cfg )                ! Namelist namrun in configuration namelist : Parameters of the run 
    343355      READ  ( numnam_cfg, namrun, IOSTAT = ios, ERR = 902 ) 
    344356902   IF( ios >  0 )   CALL ctl_nam ( ios , 'namrun in configuration namelist', lwp ) 
    345357      IF(lwm) WRITE ( numond, namrun ) 
    346358      ! 
    347       IF(lwp) THEN                  ! control print 
     359      IF(lwp) THEN                        ! control print 
    348360         WRITE(numout,*) 
    349361         WRITE(numout,*) '   Namelist : namrun   ---   run parameters' 
     
    383395      ENDIF 
    384396 
    385       cexper = cn_exp         ! conversion DOCTOR names into model names (this should disappear soon) 
     397      cexper = cn_exp         ! conversion from namelist names to model names (this should disappear) 
    386398      nrstdt = nn_rstctl 
    387399      nit000 = nn_it000 
Note: See TracChangeset for help on using the changeset viewer.