Changeset 7894 for branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcsed_medusa.F90
- Timestamp:
- 2017-04-11T13:58:38+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/NERC/dev_r5518_NOC_MEDUSA_Stable/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcsed_medusa.F90
r7766 r7894 90 90 !! add this trend now to the general trend of tracer (ta,sa,tra): 91 91 !! tra = tra + dz(trn wn) 92 !!93 !! IF 'key_trc_diabio' is defined, the now vertical advection94 !! trend of passive tracers is saved for futher diagnostics.95 92 !!--------------------------------------------------------------------- 96 93 INTEGER, INTENT( in ) :: kt ! ocean time-step index … … 140 137 ! for detrital nitrogen sedimentation only - jpdet 141 138 zwork(:,:,1 ) = 0.e0 ! surface value set to zero 142 !! DO ji = 1, jpi143 !! zirondep(ji,jj,1) = (dustsolub * dust(ji,jj) / (55.85 * rmtss) + 3.e-10 / ryyss) &144 !! & * rfact2 / fse3t(ji,jj,1)145 !! zsidep (ji,jj) = 8.8 * 0.075 * dust(ji,jj) * rfact2 / &146 !! & (fse3t(ji,jj,1) * 28.1 * rmtss)147 !! END DO148 !! END DO149 150 ! sedimentation of detrital nitrogen : upstream scheme151 ! ----------------------------------------------------152 !153 zwork(:,:,:) = 0.e0 ! initialisation of sinking variable154 ! for detrital nitrogen sedimentation only - jpdet155 zwork(:,:,1 ) = 0.e0 ! surface value set to zero156 139 zwork(:,:,jpk) = 0.e0 ! bottom value set to zero 157 140 ! … … 161 144 ! zwork(:,:,jk) = -vsed * max(trn(:,:,jk-1,jpdet),0.d0) * tmask(:,:,jk-1) 162 145 zwork(:,:,jk) = -vsed * max(trn(:,:,jk-1,jpdet),0.) * tmask(:,:,jk-1) 163 !164 ! AXY (16/01/14): stop sinking in upper 10m to reduce model instability165 ! in shallower grid cells166 ! if ( jk .lt. 9 ) zwork(:,:,jk) = 0.e0167 146 END DO 168 147 ! … … 173 152 ztra = - ( zwork(ji,jj,jk) - zwork(ji,jj,jk+1) ) / fse3t(ji,jj,jk) 174 153 tra(ji,jj,jk,jpdet) = tra(ji,jj,jk,jpdet) + ztra 175 # if defined key_trc_diabio176 trbio(ji,jj,jk,8) = ztra177 # endif178 154 IF (lk_iomput .AND. .NOT. ln_diatrc) THEN 179 155 IF( med_diag%DSED%dgsave ) THEN 180 156 zw2d(ji,jj) = zw2d(ji,jj) + ztra * fse3t(ji,jj,jk) * 86400. 181 157 ENDIF 182 ELSE IF( ln_diatrc ) THEN183 trc2d(ji,jj,8) = trc2d(ji,jj,8) + ztra * fse3t(ji,jj,jk) * 86400.184 158 ENDIF 185 159 … … 188 162 END DO 189 163 ! 190 # if defined key_trc_diabio191 CALL lbc_lnk (trbio(:,:,1,8), 'T', 1. ) ! Lateral boundary conditions on trcbio192 # endif193 IF( ln_diatrc ) CALL lbc_lnk( trc2d(:,:,8), 'T', 1. ) ! Lateral boundary conditions on trc2d194 !!195 164 IF (lk_iomput .AND. .NOT. ln_diatrc) THEN 196 165 IF( med_diag%DSED%dgsave ) THEN … … 198 167 CALL wrk_dealloc( jpi, jpj, zw2d ) 199 168 ENDIF 200 ELSE IF (lk_iomput .AND. ln_diatrc) THEN201 CALL iom_put( "DSED",trc2d(:,:,8) )202 169 ENDIF 203 170 !! … … 217 184 ! zwork(:,:,jk) = -vsed * max(trn(:,:,jk-1,jpdtc),0.d0) * tmask(:,:,jk-1) 218 185 zwork(:,:,jk) = -vsed * max(trn(:,:,jk-1,jpdtc),0.) * tmask(:,:,jk-1) 219 !220 ! AXY (16/01/14): stop sinking in upper 10m to reduce model instability221 ! in shallower grid cells222 ! if ( jk .lt. 9 ) zwork(:,:,jk) = 0.e0223 186 END DO 224 187 ! … … 229 192 ztra = - ( zwork(ji,jj,jk) - zwork(ji,jj,jk+1) ) / fse3t(ji,jj,jk) 230 193 tra(ji,jj,jk,jpdtc) = tra(ji,jj,jk,jpdtc) + ztra 231 !! # if defined key_trc_diabio232 !! trbio(ji,jj,jk,8) = ztra233 !! # endif234 !! IF( ln_diatrc ) &235 !! & trc2d(ji,jj,8) = trc2d(ji,jj,8) + ztra * fse3t(ji,jj,jk) * 86400.236 194 END DO 237 195 END DO 238 196 END DO 239 197 ! 240 !! # if defined key_trc_diabio241 !! CALL lbc_lnk (trbio(:,:,1,8), 'T', 1. ) ! Lateral boundary conditions on trcbio242 !! # endif243 !! IF( ln_diatrc ) CALL lbc_lnk( trc2d(:,:,8), 'T', 1. ) ! Lateral boundary conditions on trc2d244 !! # if defined key_iomput245 !! CALL iom_put( "DSED",trc2d(:,:,8) )246 !! # endif247 248 198 # endif 249 199 … … 381 331 ENDIF 382 332 383 !! AXY (04/11/13): replace this with a call in trc_ini_medusa384 !! AXY (25/02/10)385 !! call routine for populating CCD array if this is the first time-step386 !! IF( kt == nittrc000 ) CALL medusa_ccd( kt )387 388 !! AXY (04/11/13): replace this with a call in trc_ini_medusa389 !! AXY (26/01/12)390 !! call routine for populating river arrays if this is the first time-step391 !! IF( kt == nittrc000 ) CALL medusa_river( kt )392 393 !! AXY (10/02/09)394 !! IF( (jnt == 1) .and. (bdustfer) ) CALL trc_sed_medusa_sbc( kt )395 396 !! JPALM -- 31-03-2016 -- rewrite trc_sed_medusa_sbc.397 !! IF (kt == nittrc000 ) CALL trc_sed_medusa_sbc398 399 !! JPALM -- 20-07-2016 -- adapt dust forcing fields reading and conversion400 !! To read dust dep in kg-dust/m2/s instead of g-Fe/m2/month401 !! So all forcings and coupling dust dep are in the same SI units402 !! and then convert in mmol-Fe/m2/day403 404 333 IF( bdustfer ) THEN 405 334 CALL fld_read( kt, 1, sf_dust ) … … 414 343 zirondep(:,:) = dust(:,:) * Fe_dust_mratio / xfe_mass * 1.e6 * 86400. !! mmol-Fe/m2/d 415 344 416 !! JPALM -- 20-07-2016 -- Zirondep and zsidep are not used.417 !! So comment out the following lines. but keep them418 !! as we may want to used them later on419 !!================================================420 !!421 !! zirondep(:,:,:) = 0.e0 !! Initialisation of deposition variables422 !! zsidep (:,:) = 0.e0423 !!424 !! Iron and Si deposition at the surface425 !! -------------------------------------426 !!427 !! DO jj = 1, jpj428 !! DO ji = 1, jpi429 !! zirondep(ji,jj,1) = (dustsolub * dust(ji,jj) / (55.85 * rmtss) + 3.e-10 / ryyss) &430 !! & * rfact2 / fse3t(ji,jj,1)431 !! zsidep (ji,jj) = 8.8 * 0.075 * dust(ji,jj) * rfact2 / &432 !! & (fse3t(ji,jj,1) * 28.1 * rmtss)433 !! END DO434 !! END DO435 436 345 END SUBROUTINE trc_sed_medusa_dust 437 346
Note: See TracChangeset
for help on using the changeset viewer.