- Timestamp:
- 2020-02-26T11:02:35+01:00 (4 years ago)
- Location:
- NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP
- Files:
-
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/C14/trcsms_c14.F90
r12377 r12468 124 124 125 125 ! cumulation of air-to-sea flux at each time step 126 qint_c14(:,:) = qint_c14(:,:) + qtr_c14(:,:) * r dttrc126 qint_c14(:,:) = qint_c14(:,:) + qtr_c14(:,:) * rn_Dt 127 127 ! 128 128 ! Add the surface flux to the trend of jp_c14 -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/P4Z/p4zsms.F90
r12406 r12468 90 90 IF( ln_pisdmp .AND. MOD( kt - 1, nn_pisdmp ) == 0 ) CALL p4z_dmp( kt, Kbb, Kmm ) ! Relaxation of some tracers 91 91 ! 92 rfact = r 2dttrc92 rfact = rDt_trc 93 93 ! 94 94 ! trends computation initialisation -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/SED/oce_sed.F90
r12406 r12468 50 50 USE p4zche, ONLY : sio3eq => sio3eq !: Chemical constants 51 51 USE p4zbc, ONLY : dust => dust 52 USE trc , ONLY : r 2dttrc => r2dttrc52 USE trc , ONLY : rDt_trc => rDt_trc 53 53 54 54 END MODULE oce_sed -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/SED/seddta.F90
r12377 r12468 75 75 IF( kt == nitsed000 ) THEN 76 76 IF (lwp) WRITE(numsed,*) ' sed_dta : Sediment fields' 77 dtsed = r 2dttrc77 dtsed = rDt_trc 78 78 rsecday = 60.* 60. * 24. 79 79 ! conv2 = 1.0e+3 / ( 1.0e+4 * rsecday * 30. ) … … 103 103 DO_2D_11_11 104 104 ikt = mbkt(ji,jj) 105 zdep = e3t(ji,jj,ikt,Kmm) / r 2dttrc105 zdep = e3t(ji,jj,ikt,Kmm) / rDt_trc 106 106 zwsbio4(ji,jj) = MIN( 0.99 * zdep, wsbio4(ji,jj,ikt) / rday ) 107 107 zwsbio3(ji,jj) = MIN( 0.99 * zdep, wsbio3(ji,jj,ikt) / rday ) -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/SED/sedini.F90
r12377 r12468 488 488 489 489 jpksedm1 = jpksed - 1 490 dtsed = r 2dttrc490 dtsed = rDt_trc 491 491 492 492 READ ( numnamsed_ref, nam_trased, IOSTAT = ios, ERR = 905) -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/SED/sedstp.F90
r12377 r12468 55 55 IF(ln_sediment_offline) CALL trc_dmp_sed ( kt, Kbb, Kmm, Krhs ) 56 56 57 dtsed = r 2dttrc57 dtsed = rDt_trc 58 58 ! dtsed2 = dtsed 59 59 IF (kt /= nitsed000) THEN -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/PISCES/SED/sedwri.F90
r10222 r12468 94 94 DO ji = 1, jpoce 95 95 zflx(ji,jw) = ( pwcp(ji,1,jw) - pwcp_dta(ji,jw) ) & 96 & * 1.e3 / 1.e2 * dzkbot(ji) / r 2dttrc96 & * 1.e3 / 1.e2 * dzkbot(ji) / rDt_trc 97 97 ENDDO 98 98 ENDDO … … 100 100 ! Calculation of accumulation rate per dt 101 101 DO js = 1, jpsol 102 zrate = 1.0 / ( denssol * por1(jpksed) ) / r 2dttrc102 zrate = 1.0 / ( denssol * por1(jpksed) ) / rDt_trc 103 103 DO ji = 1, jpoce 104 104 zflx(ji,jpwatp1) = zflx(ji,jpwatp1) + ( tosed(ji,js) - fromsed(ji,js) ) * zrate -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/TRP/trcadv.F90
r12377 r12468 125 125 CALL tra_adv_cen( kt, nittrc000,'TRC', zuu, zvv, zww, Kmm, ptr, jptra, Krhs, nn_cen_h, nn_cen_v ) 126 126 CASE ( np_FCT ) ! FCT : 2nd / 4th order 127 CALL tra_adv_fct( kt, nittrc000,'TRC', r 2dttrc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_fct_h, nn_fct_v )127 CALL tra_adv_fct( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_fct_h, nn_fct_v ) 128 128 CASE ( np_MUS ) ! MUSCL 129 CALL tra_adv_mus( kt, nittrc000,'TRC', r 2dttrc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, ln_mus_ups )129 CALL tra_adv_mus( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, ln_mus_ups ) 130 130 CASE ( np_UBS ) ! UBS 131 CALL tra_adv_ubs( kt, nittrc000,'TRC', r 2dttrc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_ubs_v )131 CALL tra_adv_ubs( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs, nn_ubs_v ) 132 132 CASE ( np_QCK ) ! QUICKEST 133 CALL tra_adv_qck( kt, nittrc000,'TRC', r 2dttrc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs )133 CALL tra_adv_qck( kt, nittrc000,'TRC', rDt_trc, zuu, zvv, zww, Kbb, Kmm, ptr, jptra, Krhs ) 134 134 ! 135 135 END SELECT -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/TRP/trcatf.F90
r12443 r12468 111 111 112 112 ! total trend for the non-time-filtered variables. 113 zfact = 1.0 / r dttrc113 zfact = 1.0 / rn_Dt 114 114 ! G Nurser 23 Mar 2017. Recalculate trend as Delta(e3t*T)/e3tn; e3tn cancel from ts(Kmm) terms 115 115 IF( ln_linssh ) THEN ! linear sea surface height only … … 152 152 IF( .NOT. l_offline ) THEN ! Leap-Frog + Asselin filter time stepping 153 153 IF( ln_linssh ) THEN ; CALL tra_atf_fix( kt, Kbb, Kmm, Kaa, nittrc000, 'TRC', ptr, jptra ) ! linear ssh 154 ELSE ; CALL tra_atf_vvl( kt, Kbb, Kmm, Kaa, nittrc000, r dttrc, 'TRC', ptr, sbc_trc, sbc_trc_b, jptra ) ! non-linear ssh154 ELSE ; CALL tra_atf_vvl( kt, Kbb, Kmm, Kaa, nittrc000, rn_Dt, 'TRC', ptr, sbc_trc, sbc_trc_b, jptra ) ! non-linear ssh 155 155 ENDIF 156 156 ELSE … … 164 164 DO jn = 1, jptra 165 165 DO jk = 1, jpkm1 166 zfact = 1._wp / r 2dttrc166 zfact = 1._wp / rDt_trc 167 167 ztrdt(:,:,jk,jn) = ( ptr(:,:,jk,jn,Kbb) - ztrdt(:,:,jk,jn) ) * zfact 168 168 END DO … … 222 222 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~' 223 223 IF( .NOT. ln_linssh ) THEN 224 rfact1 = rn_atfp * r dttrc224 rfact1 = rn_atfp * rn_Dt 225 225 rfact2 = rfact1 / rho0 226 226 ENDIF -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/TRP/trcsbc.F90
r12443 r12468 147 147 zdtra = r1_rho0 * ( ztfx + ( zsfx(ji,jj) + fmmflx(ji,jj) ) * ptr(ji,jj,1,jn,Kmm) ) 148 148 IF ( zdtra < 0. ) THEN 149 zdtra = MAX(zdtra, -ptr(ji,jj,1,jn,Kmm) * e3t(ji,jj,1,Kmm) / r 2dttrc ) ! avoid negative concentrations to arise149 zdtra = MAX(zdtra, -ptr(ji,jj,1,jn,Kmm) * e3t(ji,jj,1,Kmm) / rDt_trc ) ! avoid negative concentrations to arise 150 150 ENDIF 151 151 sbc_trc(ji,jj,jn) = zdtra -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/TRP/trczdf.F90
r12377 r12468 56 56 IF( l_trdtrc ) ztrtrd(:,:,:,:) = ptr(:,:,:,:,Krhs) 57 57 ! 58 CALL tra_zdf_imp( kt, nittrc000, 'TRC', r 2dttrc, Kbb, Kmm, Krhs, ptr, Kaa, jptra ) ! implicit scheme58 CALL tra_zdf_imp( kt, nittrc000, 'TRC', rDt_trc, Kbb, Kmm, Krhs, ptr, Kaa, jptra ) ! implicit scheme 59 59 ! 60 60 IF( l_trdtrc ) THEN ! save the vertical diffusive trends for further diagnostics 61 61 DO jn = 1, jptra 62 62 DO jk = 1, jpkm1 63 ztrtrd(:,:,jk,jn) = ( ( ptr(:,:,jk,jn,Kaa) - ptr(:,:,jk,jn,Kbb) ) / r 2dttrc ) - ztrtrd(:,:,jk,jn)63 ztrtrd(:,:,jk,jn) = ( ( ptr(:,:,jk,jn,Kaa) - ptr(:,:,jk,jn,Kbb) ) / rDt_trc ) - ztrtrd(:,:,jk,jn) 64 64 END DO 65 65 CALL trd_tra( kt, Kmm, Krhs, 'TRC', jn, jptra_zdf, ztrtrd(:,:,:,jn) ) -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/TRP/trdmxl_trc.F90
r12406 r12468 401 401 DO jn = 1, jptra 402 402 IF( ln_trdtrc(jn) ) THEN 403 !-- Compute total trends (use rdttrc instead of rn_Dt ???)403 !-- Compute total trends 404 404 IF ( ln_trcadv_muscl .OR. ln_trcadv_muscl2 ) THEN ! EULER-FORWARD schemes 405 405 ztmltot(:,:,jn) = ( tml_trc(:,:,jn) - tmlbn_trc(:,:,jn) )/rn_Dt -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/trc.F90
r12397 r12468 61 61 CHARACTER(len = 80) , PUBLIC :: cn_trcrst_out !: suffix of pass. tracer restart name (output) 62 62 CHARACTER(len = 256), PUBLIC :: cn_trcrst_outdir !: restart output directory 63 REAL(wp) , PUBLIC :: rdttrc !: passive tracer time step 64 REAL(wp) , PUBLIC :: r2dttrc !: = 2*rdttrc except at nit000 (=rdttrc) if l_1st_euler=.true. 63 REAL(wp) , PUBLIC :: rDt_trc !: = 2*rn_Dt except at nit000 (=rn_Dt) if l_1st_euler=.true. 65 64 LOGICAL , PUBLIC :: ln_top_euler !: boolean term for euler integration 66 65 LOGICAL , PUBLIC :: ln_trcdta !: Read inputs data from files -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/trcnam.F90
r12406 r12468 76 76 ENDIF 77 77 ! 78 rdttrc = rn_Dt ! passive tracer time-step79 !80 78 IF(lwp) THEN ! control print 81 79 WRITE(numout,*) 82 WRITE(numout,*) ' ==>>> Passive Tracer time step rdttrc = rn_Dt = ', rdttrc80 WRITE(numout,*) ' ==>>> Passive Tracer time step = rn_Dt = ', rn_Dt 83 81 ENDIF 84 82 ! -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/trcrst.F90
r12406 r12468 136 136 !!---------------------------------------------------------------------- 137 137 ! 138 CALL iom_rstput( kt, nitrst, numrtw, 'rdttrc1', r dttrc ) ! passive tracer time step138 CALL iom_rstput( kt, nitrst, numrtw, 'rdttrc1', rn_Dt ) ! passive tracer time step (= ocean time step) 139 139 ! prognostic variables 140 140 ! -------------------- -
NEMO/branches/2020/KERNEL-03_Storkey_Coward_RK3_stage2/src/TOP/trcstp.F90
r12397 r12468 65 65 ! 66 66 IF( l_1st_euler .OR. ln_top_euler ) THEN ! at nittrc000 67 r 2dttrc = rdttrc ! = rdttrc(use or restarting with Euler time stepping)67 rDt_trc = rn_Dt ! = rn_Dt (use or restarting with Euler time stepping) 68 68 ELSEIF( kt <= nittrc000 + 1 ) THEN ! at nittrc000 or nittrc000+1 69 r 2dttrc = 2. * rdttrc ! = 2 rdttrc(leapfrog)69 rDt_trc = 2. * rn_Dt ! = 2 rn_Dt (leapfrog) 70 70 ENDIF 71 71 ! … … 177 177 nb_rec_per_day = ncpl_qsr_freq 178 178 ELSE 179 rdt_sampl = MAX( 3600., r dttrc)179 rdt_sampl = MAX( 3600., rn_Dt ) 180 180 nb_rec_per_day = INT( rday / rdt_sampl ) 181 181 ENDIF … … 196 196 197 197 CALL iom_get( numrtr, 'ktdcy', zkt ) 198 rsecfst = INT( zkt ) * r dttrc198 rsecfst = INT( zkt ) * rn_Dt 199 199 IF(lwp) WRITE(numout,*) 'trc_qsr_mean: qsr_mean read in the restart file at time-step rsecfst =', rsecfst, ' s ' 200 200 CALL iom_get( numrtr, jpdom_autoglo, 'qsr_mean', qsr_mean ) ! A mean of qsr … … 217 217 ELSE !* no restart: set from nit000 values 218 218 IF(lwp) WRITE(numout,*) 'trc_qsr_mean: qsr_mean set to nit000 values' 219 rsecfst = kt * r dttrc219 rsecfst = kt * rn_Dt 220 220 ! 221 221 qsr_mean(:,:) = qsr(:,:) … … 227 227 ENDIF 228 228 ! 229 rseclast = kt * r dttrc229 rseclast = kt * rn_Dt 230 230 ! 231 231 llnew = ( rseclast - rsecfst ) .ge. rdt_sampl ! new shortwave to store
Note: See TracChangeset
for help on using the changeset viewer.