Changeset 2300 for branches/nemo_v3_3_beta/NEMOGCM/NEMO
- Timestamp:
- 2010-10-21T10:08:05+02:00 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/nemo_v3_3_beta/NEMOGCM/NEMO/TOP_SRC/LOBSTER/trcexp.F90
r2287 r2300 56 56 !! 57 57 INTEGER :: ji, jj, jk, jl, ikbot 58 REAL(wp) :: zgeolpoc, zfact, zwork, ze3t 58 REAL(wp) :: zgeolpoc, zfact, zwork, ze3t, zsedpocd 59 59 REAL(wp), DIMENSION(:,:,:), ALLOCATABLE :: ztrbio 60 60 CHARACTER (len=25) :: charout … … 122 122 #endif 123 123 124 ! Leap-frog scheme (only in explicit case, otherwise the125 ! ---------------- time stepping is already done in trczdf)126 IF( ln_trczdf_exp .AND. (ln_trcadv_cen2 .OR. ln_trcadv_tvd) ) THEN127 zfact = 2. * rdttra(jk) * FLOAT( nn_dttrc )128 IF( neuler == 0 .AND. kt == nit000 ) zfact = rdttra(jk) * FLOAT(nn_dttrc)129 sedpoca(:,:) = sedpocb(:,:) + zfact * sedpoca(:,:)130 ENDIF131 132 124 133 125 ! Time filter and swap of arrays 134 126 ! ------------------------------ 135 IF( ln_trcadv_cen2 .OR. ln_trcadv_tvd ) THEN ! centred or tvd scheme 136 IF( neuler == 0 .AND. kt == nit000 ) THEN 137 DO jj = 1, jpj 138 DO ji = 1, jpi 139 sedpocb(ji,jj) = sedpocn(ji,jj) 140 sedpocn(ji,jj) = sedpoca(ji,jj) 141 sedpoca(ji,jj) = 0.e0 142 END DO 143 END DO 144 ELSE 145 DO jj = 1, jpj 146 DO ji = 1, jpi 147 sedpocb(ji,jj) = atfp * ( sedpocb(ji,jj) + sedpoca(ji,jj) ) & 148 & + atfp1 * sedpocn(ji,jj) 149 sedpocn(ji,jj) = sedpoca(ji,jj) 150 sedpoca(ji,jj) = 0.e0 151 END DO 152 END DO 153 ENDIF 154 ELSE ! case of smolar scheme or muscl 155 sedpocb(:,:) = sedpoca(:,:) 156 sedpocn(:,:) = sedpoca(:,:) 157 sedpoca(:,:) = 0.e0 127 IF( neuler == 0 .AND. kt == nit000 ) THEN ! Euler time-stepping at first time-step 128 ! ! (only swap) 129 sedpocn(:,:) = sedpoca(:,:) 130 ! 131 ELSE 132 ! 133 DO jj = 1, jpj 134 DO ji = 1, jpi 135 zsedpocd = sedpoca(ji,jj) - 2. * sedpocn(ji,jj) + sedpocb(ji,jj) ! time laplacian on tracers 136 sedpocb(ji,jj) = sedpocn(ji,jj) + atfp * zsedpocd ! sedpocb <-- filtered sedpocn 137 sedpocn(ji,jj) = sedpoca(ji,jj) ! sedpocn <-- sedpoca 138 END DO 139 END DO 140 ! 158 141 ENDIF 142 sedpoca(:,:) = 0.e0 159 143 ! 160 144 IF( l_trdtrc ) THEN
Note: See TracChangeset
for help on using the changeset viewer.