Changeset 7158 for branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC/DOM/domstp.F90
- Timestamp:
- 2016-10-29T01:21:05+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_v3_6_STABLE_r6506_AGRIF_LIM3/NEMOGCM/NEMO/OPA_SRC/DOM/domstp.F90
r4292 r7158 34 34 !!---------------------------------------------------------------------- 35 35 !! *** ROUTINE dom_stp *** 36 !! 36 !! 37 37 !! ** Purpose : Intialize ocean time step for the run 38 38 !! … … 41 41 !! filter parameter read in namelist 42 42 !! - Model time step: 43 !! nacc = 0 : synchronous time intergration. 44 !! There is one time step only, defined by: rdt, rdttra(k)=rdt 45 !! nacc = 1 : accelerating the convergence. There is 2 different 46 !! time steps for dynamics and tracers: 47 !! rdt : dynamical part 48 !! rdttra(k): temperature and salinity 49 !! The tracer time step is a function of vertical level. the model 50 !! reference time step ( i.e. for wind stress, surface heat and 51 !! salt fluxes) is the surface tracer time step is rdttra(1). 52 !! N.B. depth dependent acceleration of convergence is not im- 53 !! plemented for s-coordinate. 43 !! synchronous time intergration. 44 !! There is one time step only, defined by: rdt for dynamics and 45 !! tracer,wind stress, surface heat and salt fluxes 54 46 !! 55 !! ** Action : - rdttra : vertical profile of tracer time step47 !! ** Action : [REMOVED - rdttra: vertical profile of tracer time step] 56 48 !! - atfp1 : = 1 - 2*atfp 57 49 !! … … 72 64 atfp1 = 1. - 2. * atfp 73 65 74 SELECT CASE ( nacc ) 66 IF(lwp) WRITE(numout,*)' synchronous time stepping' 67 IF(lwp) WRITE(numout,*)' dynamics and tracer time step = ',rdt/3600., ' hours' 75 68 76 CASE ( 0 ) ! Synchronous time stepping77 IF(lwp) WRITE(numout,*)' synchronous time stepping'78 IF(lwp) WRITE(numout,*)' dynamics and tracer time step = ', rdt/3600., ' hours'79 80 rdttra(:) = rdt81 82 CASE ( 1 ) ! Accelerating the convergence83 IF(lwp) WRITE(numout,*) ' no tracer damping in the turbocline'84 IF(lwp) WRITE(numout,*)' accelerating the convergence'85 IF(lwp) WRITE(numout,*)' dynamics time step = ', rdt/3600., ' hours'86 IF( ln_sco .AND. rdtmin /= rdtmax .AND. lk_vvl ) &87 & CALL ctl_stop ( ' depth dependent acceleration of convergence not implemented in s-coordinates &88 & nor in variable volume' )89 IF(lwp) WRITE(numout,*)' tracers time step : dt (hours) level'90 91 DO jk = 1, jpk92 IF( gdept_1d(jk) <= rdth ) rdttra(jk) = rdtmin93 IF( gdept_1d(jk) > rdth ) THEN94 rdttra(jk) = rdtmin + ( rdtmax - rdtmin ) &95 * ( EXP( ( gdept_1d(jk ) - rdth ) / rdth ) - 1. ) &96 / ( EXP( ( gdept_1d(jpk) - rdth ) / rdth ) - 1. )97 ENDIF98 IF(lwp) WRITE(numout,"(36x,f5.2,5x,i3)") rdttra(jk)/3600., jk99 END DO100 101 CASE DEFAULT ! E R R O R102 103 WRITE(ctmp1,*) ' nacc value e r r o r, nacc= ',nacc104 CALL ctl_stop( ctmp1 )105 106 END SELECT107 69 108 70 END SUBROUTINE dom_stp
Note: See TracChangeset
for help on using the changeset viewer.