Changeset 12496
- Timestamp:
- 2020-03-02T12:33:55+01:00 (3 years ago)
- Location:
- NEMO/branches/2019/dev_r11708_aumont_PISCES_QUOTA/src/TOP/PISCES/P4Z
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/dev_r11708_aumont_PISCES_QUOTA/src/TOP/PISCES/P4Z/p4zmort.F90
r11536 r12496 23 23 PUBLIC p4z_mort_init 24 24 25 REAL(wp), PUBLIC :: wchl 25 REAL(wp), PUBLIC :: wchln !: 26 26 REAL(wp), PUBLIC :: wchld !: 27 27 REAL(wp), PUBLIC :: wchldm !: 28 REAL(wp), PUBLIC :: mprat 29 REAL(wp), PUBLIC :: mprat 2!:28 REAL(wp), PUBLIC :: mpratn !: 29 REAL(wp), PUBLIC :: mpratd !: 30 30 31 31 !!---------------------------------------------------------------------- … … 84 84 ! Squared mortality of Phyto similar to a sedimentation term during 85 85 ! blooms (Doney et al. 1996) 86 zrespp = wchl * 1.e6 * xstep * xdiss(ji,jj,jk) * zcompaph * zsizerat86 zrespp = wchln * 1.e6 * xstep * xdiss(ji,jj,jk) * zcompaph * zsizerat 87 87 88 88 ! Phytoplankton mortality. This mortality loss is slightly 89 89 ! increased when nutrients are limiting phytoplankton growth 90 90 ! as observed for instance in case of iron limitation. 91 ztortp = mprat * xstep * zcompaph / ( xkmort + trb(ji,jj,jk,jpphy) ) * zsizerat91 ztortp = mpratn * xstep * zcompaph / ( xkmort + trb(ji,jj,jk,jpphy) ) * zsizerat 92 92 93 93 zmortp = zrespp + ztortp … … 169 169 ! Phytoplankton mortality. 170 170 ! ------------------------ 171 ztortp2 = mprat 2* xstep * trb(ji,jj,jk,jpdia) / ( xkmort + trb(ji,jj,jk,jpdia) ) * zcompadi171 ztortp2 = mpratd * xstep * trb(ji,jj,jk,jpdia) / ( xkmort + trb(ji,jj,jk,jpdia) ) * zcompadi 172 172 173 173 zmortp2 = zrespp2 + ztortp2 … … 218 218 INTEGER :: ios ! Local integer 219 219 ! 220 NAMELIST/namp4zmort/ wchl , wchld, wchldm, mprat, mprat2220 NAMELIST/namp4zmort/ wchln, wchld, wchldm, mpratn, mpratd 221 221 !!---------------------------------------------------------------------- 222 222 ! … … 237 237 IF(lwp) THEN ! control print 238 238 WRITE(numout,*) ' Namelist : namp4zmort' 239 WRITE(numout,*) ' quadratic mortality of phytoplankton wchl =', wchl239 WRITE(numout,*) ' quadratic mortality of phytoplankton wchln =', wchln 240 240 WRITE(numout,*) ' maximum quadratic mortality of diatoms wchld =', wchld 241 241 WRITE(numout,*) ' maximum quadratic mortality of diatoms wchldm =', wchldm 242 WRITE(numout,*) ' phytoplankton mortality rate mprat =', mprat243 WRITE(numout,*) ' Diatoms mortality rate mprat 2 =', mprat2242 WRITE(numout,*) ' phytoplankton mortality rate mpratn =', mpratn 243 WRITE(numout,*) ' Diatoms mortality rate mpratd =', mpratd 244 244 ENDIF 245 245 ! -
NEMO/branches/2019/dev_r11708_aumont_PISCES_QUOTA/src/TOP/PISCES/P4Z/p4zprod.F90
r11536 r12496 78 78 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zprmaxn,zprmaxd 79 79 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zpislopeadn, zpislopeadd, zysopt 80 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zprdia, zprbio, zpr dch, zprnch80 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zprdia, zprbio, zprchld, zprchln 81 81 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zprorcan, zprorcad, zprofed, zprofen 82 82 REAL(wp), DIMENSION(jpi,jpj,jpk) :: zpronewn, zpronewd … … 92 92 zprofen (:,:,:) = 0._wp ; zysopt (:,:,:) = 0._wp 93 93 zpronewn(:,:,:) = 0._wp ; zpronewd(:,:,:) = 0._wp ; zprdia (:,:,:) = 0._wp 94 zprbio (:,:,:) = 0._wp ; zpr dch (:,:,:) = 0._wp ; zprnch(:,:,:) = 0._wp94 zprbio (:,:,:) = 0._wp ; zprchld (:,:,:) = 0._wp ; zprchln (:,:,:) = 0._wp 95 95 zmxl_fac(:,:,:) = 0._wp ; zmxl_chl(:,:,:) = 0._wp 96 96 … … 119 119 IF( etot_ndcy(ji,jj,jk) > 1.E-3 ) THEN 120 120 zval = MAX( 1., zstrn(ji,jj) ) 121 IF( gdep t_n(ji,jj,jk) <= hmld(ji,jj) ) THEN121 IF( gdepw_n(ji,jj,jk+1) <= hmld(ji,jj) ) THEN 122 122 zval = zval * MIN(1., heup_01(ji,jj) / ( hmld(ji,jj) + rtrn )) 123 123 ENDIF … … 171 171 zpislopen = zpislopeadn(ji,jj,jk) / ( zprmaxn(ji,jj,jk) * zmxl_chl(ji,jj,jk) * rday + rtrn ) 172 172 zpisloped = zpislopeadd(ji,jj,jk) / ( zprmaxd(ji,jj,jk) * zmxl_chl(ji,jj,jk) * rday + rtrn ) 173 zpr nch(ji,jj,jk) = zprmaxn(ji,jj,jk) * ( 1.- EXP( -zpislopen * enanom(ji,jj,jk) ) )174 zpr dch(ji,jj,jk) = zprmaxd(ji,jj,jk) * ( 1.- EXP( -zpisloped * ediatm(ji,jj,jk) ) )173 zprchln(ji,jj,jk) = zprmaxn(ji,jj,jk) * ( 1.- EXP( -zpislopen * enanom(ji,jj,jk) ) ) 174 zprchld(ji,jj,jk) = zprmaxd(ji,jj,jk) * ( 1.- EXP( -zpisloped * ediatm(ji,jj,jk) ) ) 175 175 ENDIF 176 176 END DO … … 268 268 ! production terms for nanophyto. ( chlorophyll ) 269 269 znanotot = enanom(ji,jj,jk) / ( zmxl_chl(ji,jj,jk) + rtrn ) 270 zprod = rday * zprorcan(ji,jj,jk) * zpr nch(ji,jj,jk) * xlimphy(ji,jj,jk)270 zprod = rday * zprorcan(ji,jj,jk) * zprchln(ji,jj,jk) * xlimphy(ji,jj,jk) 271 271 zprochln = chlcmin * 12. * zprorcan (ji,jj,jk) 272 272 chlcnm_n = MIN ( chlcnm, ( chlcnm / (1. - 1.14 / 43.4 *tsn(ji,jj,jk,jp_tem))) * (1. - 1.14 / 43.4 * 20.)) … … 275 275 ! production terms for diatoms ( chlorophyll ) 276 276 zdiattot = ediatm(ji,jj,jk) / ( zmxl_chl(ji,jj,jk) + rtrn ) 277 zprod = rday * zprorcad(ji,jj,jk) * zpr dch(ji,jj,jk) * xlimdia(ji,jj,jk)277 zprod = rday * zprorcad(ji,jj,jk) * zprchld(ji,jj,jk) * xlimdia(ji,jj,jk) 278 278 zprochld = chlcmin * 12. * zprorcad(ji,jj,jk) 279 279 chlcdm_n = MIN ( chlcdm, ( chlcdm / (1. - 1.14 / 43.4 * tsn(ji,jj,jk,jp_tem))) * (1. - 1.14 / 43.4 * 20.)) … … 327 327 zdocprod = excretd * zprorcad(ji,jj,jk) + excretn * zprorcan(ji,jj,jk) 328 328 zfeup = texcretn * zprofen(ji,jj,jk) + texcretd * zprofed(ji,jj,jk) 329 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zdocprod * ldocp - zfeup * plig(ji,jj,jk) * lthet 329 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zdocprod * ldocp & 330 & - zfeup * plig(ji,jj,jk) / ( rtrn + plig(ji,jj,jk) + 2.E3 * (1.0 - plig(ji,jj,jk) ) ) 330 331 zpligprod1(ji,jj,jk) = zdocprod * ldocp 331 332 zpligprod2(ji,jj,jk) = zfeup * plig(ji,jj,jk) * lthet -
NEMO/branches/2019/dev_r11708_aumont_PISCES_QUOTA/src/TOP/PISCES/P4Z/p4zsbc.F90
r11536 r12496 172 172 IF( ln_ndepo ) THEN 173 173 IF( kt == nit000 .OR. ( kt /= nit000 .AND. ntimes_ndep > 1 ) ) THEN 174 zcoef = 14 . * rno3174 zcoef = 14E6 * rno3 * ryyss 175 175 CALL fld_read( kt, 1, sf_ndepo ) 176 176 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t_n(:,:,1) ) 177 177 ENDIF 178 178 IF( .NOT.ln_linssh ) THEN 179 zcoef = 14 . * rno3179 zcoef = 14E6 * rno3 * ryyss 180 180 nitdep(:,:) = MAX( rtrn, sf_ndepo(1)%fnow(:,:,1) / zcoef / e3t_n(:,:,1) ) 181 181 ENDIF … … 270 270 ENDIF 271 271 272 ! set the number of level over which river runoffs are applied273 ! online configuration : computed in sbcrnf274 IF( l_offline ) THEN275 nk_rnf(:,:) = 1276 h_rnf (:,:) = gdept_n(:,:,1)277 ENDIF278 279 272 ! dust input from the atmosphere 280 273 ! ------------------------------ -
NEMO/branches/2019/dev_r11708_aumont_PISCES_QUOTA/src/TOP/PISCES/P4Z/p5zprod.F90
r12349 r12496 462 462 zdocprod = excretd * zprorcad(ji,jj,jk) + excretn * zprorcan(ji,jj,jk) + excretp * zprorcap(ji,jj,jk) 463 463 zfeup = texcretn * zprofen(ji,jj,jk) + texcretd * zprofed(ji,jj,jk) + texcretp * zprofep(ji,jj,jk) 464 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zdocprod * ldocp - zfeup * plig(ji,jj,jk) * lthet 464 tra(ji,jj,jk,jplgw) = tra(ji,jj,jk,jplgw) + zdocprod * ldocp & 465 & - zfeup * plig(ji,jj,jk) / ( rtrn + plig(ji,jj,jk) + 2.E3 * (1.0 - plig(ji,jj,jk) ) ) 465 466 zpligprod1(ji,jj,jk) = zdocprod * ldocp 466 467 zpligprod2(ji,jj,jk) = zfeup * plig(ji,jj,jk) * lthet
Note: See TracChangeset
for help on using the changeset viewer.