- Timestamp:
- 2016-10-19T12:55:07+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r7012_ROBUST5_CNRS/NEMOGCM/NEMO/TOP_SRC/PISCES/P4Z/p4zmeso.F90
r5836 r7041 70 70 REAL(wp) :: zcompadi, zcompaph, zcompapoc, zcompaz, zcompam 71 71 REAL(wp) :: zgraze2 , zdenom, zdenom2 72 REAL(wp) :: zfact , z step, zfood, zfoodlim, zproport72 REAL(wp) :: zfact , zfood, zfoodlim, zproport 73 73 REAL(wp) :: zmortzgoc, zfrac, zfracfe, zratio, zratio2 74 74 REAL(wp) :: zepshert, zepsherv, zgrarsig, zgraztot, zgraztotn, zgraztotf 75 75 REAL(wp) :: zgrarem2, zgrafer2, zgrapoc2, zprcaca, zmortz2, zgrasrat, zgrasratn 76 #if defined key_kriest77 REAL znumpoc78 #endif79 76 REAL(wp) :: zrespz2, ztortz2, zgrazd, zgrazz, zgrazpof 80 77 REAL(wp) :: zgrazn, zgrazpoc, zgraznf, zgrazf … … 96 93 DO ji = 1, jpi 97 94 zcompam = MAX( ( trb(ji,jj,jk,jpmes) - 1.e-9 ), 0.e0 ) 98 # if defined key_degrad 99 zstep = xstep * facvol(ji,jj,jk) 100 # else 101 zstep = xstep 102 # endif 103 zfact = zstep * tgfunc2(ji,jj,jk) * zcompam 95 zfact = xstep * tgfunc2(ji,jj,jk) * zcompam 104 96 105 97 ! Respiration rates of both zooplankton … … 126 118 zdenom = zfoodlim / ( xkgraz2 + zfoodlim ) 127 119 zdenom2 = zdenom / ( zfood + rtrn ) 128 zgraze2 = grazrat2 * zstep * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jpmes)120 zgraze2 = grazrat2 * xstep * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jpmes) 129 121 130 122 zgrazd = zgraze2 * xprefc * zcompadi * zdenom2 … … 140 132 ! ---------------------------------- 141 133 ! ---------------------------------- 142 # if ! defined key_kriest 143 zgrazffeg = grazflux * zstep * wsbio4(ji,jj,jk) & 134 zgrazffeg = grazflux * xstep * wsbio4(ji,jj,jk) & 144 135 & * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jpgoc) * trb(ji,jj,jk,jpmes) 145 136 zgrazfffg = zgrazffeg * trb(ji,jj,jk,jpbfe) / (trb(ji,jj,jk,jpgoc) + rtrn) 146 # endif 147 zgrazffep = grazflux * zstep * wsbio3(ji,jj,jk) & 137 zgrazffep = grazflux * xstep * wsbio3(ji,jj,jk) & 148 138 & * tgfunc2(ji,jj,jk) * trb(ji,jj,jk,jppoc) * trb(ji,jj,jk,jpmes) 149 139 zgrazfffp = zgrazffep * trb(ji,jj,jk,jpsfe) / (trb(ji,jj,jk,jppoc) + rtrn) 150 140 ! 151 # if ! defined key_kriest152 141 zgraztot = zgrazd + zgrazz + zgrazn + zgrazpoc + zgrazffep + zgrazffeg 153 142 ! Compute the proportion of filter feeders … … 158 147 zratio = trb(ji,jj,jk,jpgsi) / ( trb(ji,jj,jk,jpgoc) + rtrn ) 159 148 zratio2 = zratio * zratio 160 zfrac = zproport * grazflux * zstep * wsbio4(ji,jj,jk) &149 zfrac = zproport * grazflux * xstep * wsbio4(ji,jj,jk) & 161 150 & * trb(ji,jj,jk,jpgoc) * trb(ji,jj,jk,jpmes) & 162 151 & * ( 0.2 + 3.8 * zratio2 / ( 1.**2 + zratio2 ) ) … … 171 160 & + zgrazpoc + zgrazffep + zgrazffeg 172 161 zgraztotf = zgrazf + zgraznf + zgrazz * ferat3 + zgrazpof + zgrazfffp + zgrazfffg 173 # else174 zgraztot = zgrazd + zgrazz + zgrazn + zgrazpoc + zgrazffep175 ! Compute the proportion of filter feeders176 zproport = zgrazffep / ( zgraztot + rtrn )177 zgrazffep = zproport * zgrazffep178 zgrazfffp = zproport * zgrazfffp179 zgraztot = zgrazd + zgrazz + zgrazn + zgrazpoc + zgrazffep180 zgraztotn = zgrazd * quotad(ji,jj,jk) + zgrazz + zgrazn * quotan(ji,jj,jk) + zgrazpoc + zgrazffep181 zgraztotf = zgrazf + zgraznf + zgrazz * ferat3 + zgrazpof + zgrazfffp182 # endif183 162 184 163 ! Total grazing ( grazing by microzoo is already computed in p4zmicro ) … … 228 207 tra(ji,jj,jk,jptal) = tra(ji,jj,jk,jptal) - 2. * zprcaca 229 208 tra(ji,jj,jk,jpcal) = tra(ji,jj,jk,jpcal) + zprcaca 230 #if defined key_kriest 231 znumpoc = trb(ji,jj,jk,jpnum) / ( trb(ji,jj,jk,jppoc) + rtrn ) 232 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) + zmortzgoc - zgrazpoc - zgrazffep + zgrapoc2 233 tra(ji,jj,jk,jpnum) = tra(ji,jj,jk,jpnum) - zgrazpoc * znumpoc + zgrapoc2 * xkr_dmeso & 234 & + zmortzgoc * xkr_dmeso - zgrazffep * znumpoc * wsbio4(ji,jj,jk) / ( wsbio3(ji,jj,jk) + rtrn ) 235 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) + ferat3 * zmortzgoc - zgrazfffp - zgrazpof & 236 & + zgraztotf * unass2 237 #else 238 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zgrazpoc - zgrazffep + zfrac 239 tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortzgoc - zgrazffeg + zgrapoc2 - zfrac 240 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) - zgrazpof - zgrazfffp + zfracfe 241 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfffg & 242 & + zgraztotf * unass2 - zfracfe 243 #endif 209 tra(ji,jj,jk,jppoc) = tra(ji,jj,jk,jppoc) - zgrazpoc - zgrazffep + zfrac 210 tra(ji,jj,jk,jpgoc) = tra(ji,jj,jk,jpgoc) + zmortzgoc - zgrazffeg + zgrapoc2 - zfrac 211 tra(ji,jj,jk,jpsfe) = tra(ji,jj,jk,jpsfe) - zgrazpof - zgrazfffp + zfracfe 212 tra(ji,jj,jk,jpbfe) = tra(ji,jj,jk,jpbfe) + ferat3 * zmortzgoc - zgrazfffg & 213 & + zgraztotf * unass2 - zfracfe 244 214 END DO 245 215 END DO
Note: See TracChangeset
for help on using the changeset viewer.