Ignore:
Timestamp:
2020-02-28T16:55:11+01:00 (9 months ago)
Author:
davestorkey
Message:

Preparation for new timestepping scheme #2390.
Main changes:

  1. Initial euler timestep now handled in stp and not in TRA/DYN routines.
  2. Renaming of all timestep parameters. In summary, the namelist parameter is now rn_Dt and the current timestep is rDt (and rDt_ice, rDt_trc etc).
  3. Renaming of a few miscellaneous parameters, eg. atfp → rn_atfp (namelist parameter used everywhere) and rau0 → rho0.

This version gives bit-comparable results to the previous version of the trunk.

Location:
NEMO/trunk/src/TOP/PISCES
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/src/TOP/PISCES/P2Z/p2zexp.F90

    r12377 r12489  
    9898         zwork = vsed * tr(ji,jj,ikt,jpdet,Kmm) 
    9999         zsedpoca(ji,jj) = ( zwork + dminl(ji,jj) * xksi(ji,jj)   & 
    100             &           - sedlam * sedpocn(ji,jj) - sedlostpoc * sedpocn(ji,jj) ) * rdt 
     100            &           - sedlam * sedpocn(ji,jj) - sedlostpoc * sedpocn(ji,jj) ) * rn_Dt 
    101101         zgeolpoc = zgeolpoc + sedlostpoc * sedpocn(ji,jj) * e1e2t(ji,jj) 
    102102      END_2D 
     
    114114      ! Time filter and swap of arrays 
    115115      ! ------------------------------ 
    116       IF( neuler == 0 .AND. kt == nittrc000 ) THEN        ! Euler time-stepping at first time-step 
    117         !                                             ! (only swap) 
     116      IF( l_1st_euler ) THEN        ! Euler time-stepping at first time-step 
     117        !                           ! (only swap) 
    118118        sedpocn(:,:) = zsedpoca(:,:) 
    119119        !                                               
     
    122122        DO_2D_11_11 
    123123           zsedpocd = zsedpoca(ji,jj) - 2. * sedpocn(ji,jj) + sedpocb(ji,jj)      ! time laplacian on tracers 
    124            sedpocb(ji,jj) = sedpocn(ji,jj) + atfp * zsedpocd                     ! sedpocb <-- filtered sedpocn 
     124           sedpocb(ji,jj) = sedpocn(ji,jj) + rn_atfp * zsedpocd                     ! sedpocb <-- filtered sedpocn 
    125125           sedpocn(ji,jj) = zsedpoca(ji,jj)                                       ! sedpocn <-- sedpoca 
    126126        END_2D 
  • NEMO/trunk/src/TOP/PISCES/P4Z/p4zsms.F90

    r12377 r12489  
    9090      IF( ln_pisdmp .AND. MOD( kt - 1, nn_pisdmp ) == 0 )   CALL p4z_dmp( kt, Kbb, Kmm )      ! Relaxation of some tracers 
    9191      ! 
    92       rfact = r2dttrc 
     92      rfact = rDt_trc 
    9393      ! 
    9494      ! trends computation initialisation 
     
    106106         xfact = 1.e+3 * rfact2r 
    107107         IF(lwp) WRITE(numout,*)  
    108          IF(lwp) WRITE(numout,*) '    Passive Tracer  time step    rfact  = ', rfact, ' rdt = ', rdt 
     108         IF(lwp) WRITE(numout,*) '    Passive Tracer  time step    rfact  = ', rfact, ' rn_Dt = ', rn_Dt 
    109109         IF(lwp) write(numout,*) '    PISCES  Biology time step    rfact2 = ', rfact2 
    110110         IF(lwp) WRITE(numout,*) 
    111111      ENDIF 
    112112 
    113       IF( ( neuler == 0 .AND. kt == nittrc000 ) .OR. ln_top_euler ) THEN 
     113      IF( l_1st_euler .OR. ln_top_euler ) THEN 
    114114         DO jn = jp_pcs0, jp_pcs1              !   SMS on tracer without Asselin time-filter 
    115115            tr(:,:,:,jn,Kbb) = tr(:,:,:,jn,Kmm) 
  • NEMO/trunk/src/TOP/PISCES/SED/oce_sed.F90

    r12377 r12489  
    1818   USE dom_oce , ONLY :   mbkt      =>   mbkt           !: vertical index of the bottom last T- ocean level 
    1919   USE dom_oce , ONLY :   tmask     =>   tmask          !: land/ocean mask at t-points 
    20    USE dom_oce , ONLY :   rdt       =>   rdt            !: time step for the dynamics 
     20   USE dom_oce , ONLY :   rn_Dt     =>   rn_Dt          !: time step for the dynamics 
    2121   USE dom_oce , ONLY :   nyear     =>   nyear          !: Current year 
    2222   USE dom_oce , ONLY :   ndastp    =>   ndastp         !: time step date in year/month/day aammjj 
     
    5050   USE p4zche, ONLY     : sio3eq    =>   sio3eq          !: Chemical constants   
    5151   USE p4zbc, ONLY     : dust      =>   dust 
    52    USE trc  , ONLY : r2dttrc   =>   r2dttrc 
     52   USE trc  , ONLY : rDt_trc   =>   rDt_trc 
    5353 
    5454END MODULE oce_sed 
  • NEMO/trunk/src/TOP/PISCES/SED/seddta.F90

    r12377 r12489  
    7575      IF( kt == nitsed000 ) THEN 
    7676         IF (lwp) WRITE(numsed,*) ' sed_dta : Sediment fields' 
    77          dtsed = r2dttrc 
     77         dtsed = rDt_trc 
    7878         rsecday = 60.* 60. * 24. 
    7979!         conv2   = 1.0e+3 / ( 1.0e+4 * rsecday * 30. ) 
     
    103103         DO_2D_11_11 
    104104            ikt = mbkt(ji,jj) 
    105             zdep = e3t(ji,jj,ikt,Kmm) / r2dttrc 
     105            zdep = e3t(ji,jj,ikt,Kmm) / rDt_trc 
    106106            zwsbio4(ji,jj) = MIN( 0.99 * zdep, wsbio4(ji,jj,ikt) / rday ) 
    107107            zwsbio3(ji,jj) = MIN( 0.99 * zdep, wsbio3(ji,jj,ikt) / rday ) 
  • NEMO/trunk/src/TOP/PISCES/SED/sedini.F90

    r12377 r12489  
    488488 
    489489      jpksedm1  = jpksed - 1 
    490       dtsed = r2dttrc 
     490      dtsed = rDt_trc 
    491491 
    492492      READ  ( numnamsed_ref, nam_trased, IOSTAT = ios, ERR = 905) 
  • NEMO/trunk/src/TOP/PISCES/SED/sedrst.F90

    r12377 r12489  
    330330      !!       In both those options, the  exact duration of the experiment 
    331331      !!       since the beginning (cumulated duration of all previous restart runs) 
    332       !!       is not stored in the restart and is assumed to be (nittrc000-1)*rdt. 
     332      !!       is not stored in the restart and is assumed to be (nittrc000-1)*rn_Dt. 
    333333      !!       This is valid is the time step has remained constant. 
    334334      !! 
     
    381381             ELSE 
    382382               ndastp = ndate0 - 1     ! ndate0 read in the namelist in dom_nam 
    383                adatrj = ( REAL( nittrc000-1, wp ) * rdt ) / rday 
     383               adatrj = ( REAL( nittrc000-1, wp ) * rn_Dt ) / rday 
    384384               ! note this is wrong if time step has changed during run 
    385385            ENDIF 
  • NEMO/trunk/src/TOP/PISCES/SED/sedstp.F90

    r12377 r12489  
    5555      IF(ln_sediment_offline)   CALL trc_dmp_sed  ( kt, Kbb, Kmm, Krhs ) 
    5656 
    57       dtsed  = r2dttrc 
     57      dtsed  = rDt_trc 
    5858!      dtsed2 = dtsed 
    5959      IF (kt /= nitsed000) THEN 
  • NEMO/trunk/src/TOP/PISCES/SED/sedwri.F90

    r10222 r12489  
    9494         DO ji = 1, jpoce 
    9595            zflx(ji,jw) = ( pwcp(ji,1,jw) - pwcp_dta(ji,jw) ) & 
    96                &         * 1.e3 / 1.e2 * dzkbot(ji) / r2dttrc 
     96               &         * 1.e3 / 1.e2 * dzkbot(ji) / rDt_trc 
    9797         ENDDO 
    9898      ENDDO 
     
    100100      ! Calculation of accumulation rate per dt 
    101101      DO js = 1, jpsol 
    102          zrate =  1.0 / ( denssol * por1(jpksed) ) / r2dttrc 
     102         zrate =  1.0 / ( denssol * por1(jpksed) ) / rDt_trc 
    103103         DO ji = 1, jpoce 
    104104            zflx(ji,jpwatp1) = zflx(ji,jpwatp1) + ( tosed(ji,js) - fromsed(ji,js) ) * zrate 
Note: See TracChangeset for help on using the changeset viewer.