Changeset 2240 for branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA
- Timestamp:
- 2010-10-13T10:48:48+02:00 (14 years ago)
- Location:
- branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA/traadv_muscl.F90
r2236 r2240 180 180 ! ! "Poleward" heat and salt transports (contribution of upstream fluxes) 181 181 IF( cdtype == 'TRA' .AND. ln_diaptr .AND. ( MOD( kt, nf_ptr ) == 0 ) ) THEN 182 IF( lk_zco ) THEN183 DO jk = 1, jpkm1184 DO jj = 2, jpjm1185 DO ji = fs_2, fs_jpim1 ! vector opt.186 zwy(ji,jj,jk) = zwy(ji,jj,jk) * fse3v(ji,jj,jk)187 END DO188 END DO189 END DO190 ENDIF191 182 IF( jn == jp_tem ) pht_adv(:) = ptr_vj( zwy(:,:,:) ) 192 183 IF( jn == jp_sal ) pst_adv(:) = ptr_vj( zwy(:,:,:) ) -
branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA/traadv_muscl2.F90
r2236 r2240 202 202 ! ! "Poleward" heat and salt transports (contribution of upstream fluxes) 203 203 IF( cdtype == 'TRA' .AND. ln_diaptr .AND. ( MOD( kt, nf_ptr ) == 0 ) ) THEN 204 IF( lk_zco ) THEN205 DO jk = 1, jpkm1206 DO jj = 2, jpjm1207 DO ji = fs_2, fs_jpim1 ! vector opt.208 zwy(ji,jj,jk) = zwy(ji,jj,jk) * fse3v(ji,jj,jk)209 END DO210 END DO211 END DO212 ENDIF213 204 IF( jn == jp_tem ) pht_adv(:) = ptr_vj( zwy(:,:,:) ) 214 205 IF( jn == jp_sal ) pst_adv(:) = ptr_vj( zwy(:,:,:) ) -
branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA/traadv_ubs.F90
r2236 r2240 184 184 ! ! "Poleward" heat and salt transports (contribution of upstream fluxes) 185 185 IF( cdtype == 'TRA' .AND. ln_diaptr .AND. ( MOD( kt, nf_ptr ) == 0 ) ) THEN 186 IF( lk_zco ) THEN187 DO jk = 1, jpkm1188 DO jj = 2, jpjm1189 DO ji = fs_2, fs_jpim1 ! vector opt.190 zwy(ji,jj,jk) = zwy(ji,jj,jk) * fse3v(ji,jj,jk)191 END DO192 END DO193 END DO194 ENDIF195 186 IF( jn == jp_tem ) pht_adv(:) = ptr_vj( zwy(:,:,:) ) 196 187 IF( jn == jp_sal ) pst_adv(:) = ptr_vj( zwy(:,:,:) ) -
branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA/traldf_lap.F90
r2104 r2240 57 57 !! difft = 1/(e1t*e2t*e3t) { di-1[ aht e2u*e3u/e1u di(tb) ] 58 58 !! + dj-1[ aht e1v*e3v/e2v dj(tb) ] } 59 !! Note: key_zco defined, the e3t=e3u=e3v, the trend becomes:60 !! difft = 1/(e1t*e2t) { di-1[ aht e2u/e1u di(tb) ]61 !! + dj-1[ aht e1v/e2v dj(tb) ] }62 59 !! Add this trend to the general tracer trend pta : 63 60 !! pta = pta + difft -
branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/TRA/tranxt.F90
r2236 r2240 143 143 ! Leap-Frog + Asselin filter time stepping 144 144 IF( lk_vvl ) THEN ; CALL tra_nxt_vvl( kt, 'TRA', tsb, tsn, tsa, jpts ) ! variable volume level (vvl) 145 ELSE ; CALL tra_nxt_fix( kt, 145 ELSE ; CALL tra_nxt_fix( kt, 'TRA', tsb, tsn, tsa, jpts ) ! fixed volume level 146 146 ENDIF 147 147 … … 172 172 173 173 174 SUBROUTINE tra_nxt_fix( kt, ptb, ptn, pta, kjpt )174 SUBROUTINE tra_nxt_fix( kt, cdtype, ptb, ptn, pta, kjpt ) 175 175 !!---------------------------------------------------------------------- 176 176 !! *** ROUTINE tra_nxt_fix *** … … 195 195 !! - (ta,sa) time averaged (t,s) (ln_dynhpg_imp = T) 196 196 !!---------------------------------------------------------------------- 197 INTEGER , INTENT(in ) :: kt ! ocean time-step index198 INTEGER , INTENT(in ) :: kjpt ! number of tracers199 REAL(wp), INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: ptb ! before tracer fields200 REAL(wp) , INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: ptn ! nowtracer fields201 REAL(wp) , INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: pta ! tracer trend202 !!197 INTEGER , INTENT(in ) :: kt ! ocean time-step index 198 CHARACTER(len=3), INTENT(in ) :: cdtype ! =TRA or TRC (tracer indicator) 199 INTEGER , INTENT(in ) :: kjpt ! number of tracers 200 REAL(wp) , INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: ptb ! before tracer fields 201 REAL(wp) , INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: ptn ! now tracer fields 202 REAL(wp) , INTENT(inout), DIMENSION(jpi,jpj,jpk,kjpt) :: pta ! tracer trend 203 203 INTEGER :: ji, jj, jk, jn ! dummy loop indices 204 204 REAL(wp) :: ztd, ztm ! temporary scalars … … 222 222 ELSE ! general case (Leapfrog + Asselin filter 223 223 ! 224 ! ! ----------------------- !225 IF( ln_dynhpg_imp ) THEN! semi-implicite hpg case !226 ! ! ----------------------- !224 ! ! ----------------------- ! 225 IF( ln_dynhpg_imp .AND. cdtype == 'TRA' ) THEN ! semi-implicite hpg case ! 226 ! ! ----------------------- ! 227 227 DO jn = 1, kjpt 228 228 DO jk = 1, jpkm1 … … 317 317 ELSE ! general case (Leapfrog + Asselin filter) 318 318 ! 319 ! ! ----------------------- !320 IF( ln_dynhpg_imp ) THEN! semi-implicite hpg case !321 ! ! ----------------------- !319 ! ! ----------------------- ! 320 IF( ln_dynhpg_imp .AND. cdtype == 'TRA' ) THEN ! semi-implicite hpg case ! 321 ! ! ----------------------- ! 322 322 DO jn = 1, kjpt 323 323 DO jk = 1, jpkm1
Note: See TracChangeset
for help on using the changeset viewer.