Changeset 8039 for branches/UKMO/dev_r5518_medusa_chg_trc_bio_medusa/NEMOGCM/NEMO/TOP_SRC/MEDUSA/detritus_fast_sink.F90
- Timestamp:
- 2017-05-18T11:14:31+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/UKMO/dev_r5518_medusa_chg_trc_bio_medusa/NEMOGCM/NEMO/TOP_SRC/MEDUSA/detritus_fast_sink.F90
r8023 r8039 35 35 f_benout_si, & 36 36 f_fbenin_c, f_fbenin_ca, f_fbenin_fe, & 37 f_fbenin_n, f_fbenin_si, & 38 f_omcal, fcaco3, & 39 fccd, fccd_dep, fdep1, fdd, & 37 f_fbenin_n, f_fbenin_si, f_omcal, & 38 fccd, fdep1, fdd, & 40 39 fdpd, fdpd2, fdpds, fdpds2, & 41 40 fdpn, fdpn2, & … … 52 51 fmeexcr, fmiexcr, & 53 52 fofd_fe, fofd_n, fofd_si, & 54 fprotf, &55 53 fregen, fregenfast, fregenfastsi, & 56 54 fregensi, & … … 73 71 USE oce, ONLY: tsn 74 72 USE par_kind, ONLY: wp 75 USE par_oce, ONLY: jpi m1, jpjm173 USE par_oce, ONLY: jpi, jpim1, jpj, jpjm1 76 74 USE sms_medusa, ONLY: f2_ccd_cal, f3_omcal, & 77 75 jexport, jfdfate, jinorgben, jocalccd, & … … 102 100 INTEGER :: ji, jj 103 101 104 REAL(wp) :: fb_val, fl_sst 102 REAL(wp) :: fb_val, fl_sst 103 !! Particle flux 104 REAL(wp) :: fcaco3 105 REAL(wp) :: fprotf 106 REAL(wp), DIMENSION(jpi,jpj) :: fccd_dep 105 107 !! temporary variables 106 108 REAL(wp) :: fq0,fq1,fq2,fq3,fq4,fq5,fq6,fq7,fq8 … … 236 238 !! primary production 237 239 !! 0.10 at equator; 0.02 at pole 238 fcaco3(ji,jj) = xcaco3a + ((xcaco3b - xcaco3a) * & 239 ((90.0 - abs(gphit(ji,jj))) / & 240 90.0)) 240 fcaco3 = xcaco3a + ((xcaco3b - xcaco3a) * & 241 ((90.0 - abs(gphit(ji,jj))) / 90.0)) 241 242 elseif (jrratio.eq.1) then 242 243 !! CaCO3: Ridgwell et al. (2007) submodel, version 1 … … 248 249 fq1 = 0. 249 250 endif 250 fcaco3 (ji,jj)= xridg_r0 * fq1251 fcaco3 = xridg_r0 * fq1 251 252 elseif (jrratio.eq.2) then 252 253 !! CaCO3: Ridgwell et al. (2007) submodel, version 2 … … 258 259 fq1 = 0. 259 260 endif 260 fcaco3 (ji,jj)= xridg_r0 * fq1261 fcaco3 = xridg_r0 * fq1 261 262 endif 262 ENDIF263 ENDDO264 ENDDO265 263 # else 266 DO jj = 2,jpjm1267 DO ji = 2,jpim1268 if (tmask(ji,jj,jk) == 1) then269 264 !! CaCO3: latitudinally-based fraction of total primary 270 265 !! production 271 266 !! 0.10 at equator; 0.02 at pole 272 fcaco3(ji,jj) = xcaco3a + ((xcaco3b - xcaco3a) * & 273 ((90.0 - abs(gphit(ji,jj))) / 90.0)) 274 ENDIF 275 ENDDO 276 ENDDO 267 fcaco3 = xcaco3a + ((xcaco3b - xcaco3a) * & 268 ((90.0 - abs(gphit(ji,jj))) / 90.0)) 277 269 # endif 278 279 DO jj = 2,jpjm1280 DO ji = 2,jpim1281 if (tmask(ji,jj,jk) == 1) then282 270 !! AXY (09/03/09): convert CaCO3 production from function of 283 271 !! primary production into a function of fast-sinking material; … … 286 274 !! chlorophyll to an export flux for which they apply conversion 287 275 !! factors to estimate the various elemental fractions (Si, Ca) 288 ftempca(ji,jj) = ftempc(ji,jj) * fcaco3 (ji,jj)276 ftempca(ji,jj) = ftempc(ji,jj) * fcaco3 289 277 290 278 # if defined key_debug_medusa … … 316 304 IF (lwp) write (numout,*) 'flat(',jk,') = ', & 317 305 abs(gphit(ji,jj)) 318 IF (lwp) write (numout,*) 'fcaco3(',jk,') = ', fcaco3 (ji,jj)306 IF (lwp) write (numout,*) 'fcaco3(',jk,') = ', fcaco3 319 307 endif 320 308 # endif … … 428 416 if (fq4.lt.fq1) then 429 417 !! protected fraction of total organic C (non-dim) 430 fprotf (ji,jj)= (fq4 / (fq1 + tiny(fq1)))418 fprotf = (fq4 / (fq1 + tiny(fq1))) 431 419 else 432 420 !! all organic C is protected (non-dim) 433 fprotf (ji,jj)= 1.0421 fprotf = 1.0 434 422 endif 435 423 !! unprotected fraction of total organic C (non-dim) 436 fq5 = (1.0 - fprotf (ji,jj))424 fq5 = (1.0 - fprotf) 437 425 !! how much organic C is unprotected (mol) 438 426 fq6 = (fq0 * fq5) … … 440 428 fq7 = (fq6 * exp(-(fse3t(ji,jj,jk) / xfastc))) 441 429 !! how much total C leaves this box (mol) 442 fq8 = (fq7 + (fq0 * fprotf (ji,jj)))430 fq8 = (fq7 + (fq0 * fprotf)) 443 431 !! C remineralisation in this box (mol) 444 432 freminc(ji,jj) = (fq0 - fq8) / fse3t(ji,jj,jk) … … 454 442 fq4 455 443 IF (lwp) write (numout,*) 'fprotf(',jk,') = ', & 456 fprotf (ji,jj)444 fprotf 457 445 IF (lwp) write (numout,*) & 458 446 '------------------------------' … … 480 468 if (iball.eq.1) then 481 469 !! unprotected fraction of total organic N (non-dim) 482 fq5 = (1.0 - fprotf (ji,jj))470 fq5 = (1.0 - fprotf) 483 471 !! how much organic N is unprotected (mol) 484 472 fq6 = (fq0 * fq5) … … 486 474 fq7 = (fq6 * exp(-(fse3t(ji,jj,jk) / xfastc))) 487 475 !! how much total N leaves this box (mol) 488 fq8 = (fq7 + (fq0 * fprotf (ji,jj)))476 fq8 = (fq7 + (fq0 * fprotf)) 489 477 !! N remineralisation in this box (mol) 490 478 freminn(ji,jj) = (fq0 - fq8) / fse3t(ji,jj,jk) … … 498 486 IF (lwp) write (numout,*) 'prtctN(',jk,') = ', fq4 499 487 IF (lwp) write (numout,*) 'fprotf(',jk,') = ', & 500 fprotf (ji,jj)488 fprotf 501 489 IF (lwp) write (numout,*) & 502 490 '------------------------------' … … 525 513 if (iball.eq.1) then 526 514 !! unprotected fraction of total organic Fe (non-dim) 527 fq5 = (1.0 - fprotf (ji,jj))515 fq5 = (1.0 - fprotf) 528 516 !! how much organic Fe is unprotected (mol) 529 517 fq6 = (fq0 * fq5) … … 531 519 fq7 = (fq6 * exp(-(fse3t(ji,jj,jk) / xfastc))) 532 520 !! how much total Fe leaves this box (mol) 533 fq8 = (fq7 + (fq0 * fprotf (ji,jj)))521 fq8 = (fq7 + (fq0 * fprotf)) 534 522 !! Fe remineralisation in this box (mol) 535 523 freminfe(ji,jj) = (fq0 - fq8) / fse3t(ji,jj,jk)
Note: See TracChangeset
for help on using the changeset viewer.