| 1 |
jahn |
1.10 |
C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/monod/monod_init_fixed.F,v 1.9 2012/07/26 21:40:10 stephd Exp $ |
| 2 |
stephd |
1.2 |
C $Name: $ |
| 3 |
jahn |
1.1 |
|
| 4 |
|
|
#include "CPP_OPTIONS.h" |
| 5 |
|
|
#include "PTRACERS_OPTIONS.h" |
| 6 |
|
|
#include "DARWIN_OPTIONS.h" |
| 7 |
|
|
|
| 8 |
|
|
#ifdef ALLOW_PTRACERS |
| 9 |
|
|
#ifdef ALLOW_MONOD |
| 10 |
|
|
|
| 11 |
|
|
c=============================================================================== |
| 12 |
|
|
C=============================================================================== |
| 13 |
|
|
CStartofinterface |
| 14 |
|
|
SUBROUTINE MONOD_INIT_FIXED(myThid) |
| 15 |
|
|
C =============== Global data ========================================== |
| 16 |
|
|
C === Global variables === |
| 17 |
|
|
implicit none |
| 18 |
|
|
#include "SIZE.h" |
| 19 |
|
|
#include "EEPARAMS.h" |
| 20 |
|
|
#include "PARAMS.h" |
| 21 |
|
|
#include "GRID.h" |
| 22 |
|
|
#include "DYNVARS.h" |
| 23 |
|
|
#include "GCHEM.h" |
| 24 |
|
|
#include "DARWIN_PARAMS.h" |
| 25 |
|
|
#include "MONOD_SIZE.h" |
| 26 |
|
|
#include "MONOD.h" |
| 27 |
|
|
#include "DARWIN_FLUX.h" |
| 28 |
|
|
|
| 29 |
|
|
INTEGER myThid |
| 30 |
|
|
C============== Local variables ============================================ |
| 31 |
|
|
C msgBuf - Informational/error meesage buffer |
| 32 |
|
|
CHARACTER*(MAX_LEN_MBUF) msgBuf |
| 33 |
|
|
_RL pday |
| 34 |
|
|
INTEGER i,j,k,bi,bj,nz |
| 35 |
|
|
INTEGER tmp |
| 36 |
|
|
INTEGER prec |
| 37 |
|
|
CHARACTER*(MAX_LEN_MBUF) fn |
| 38 |
|
|
C /--------------------------------------------------------------\ |
| 39 |
|
|
C | initialise common block biochemical parameters | |
| 40 |
|
|
C \--------------------------------------------------------------/ |
| 41 |
|
|
|
| 42 |
jahn |
1.10 |
_BEGIN_MASTER(myThid) |
| 43 |
|
|
|
| 44 |
jahn |
1.1 |
WRITE(msgBuf,'(A)') |
| 45 |
|
|
&'// =======================================================' |
| 46 |
|
|
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
| 47 |
|
|
& SQUEEZE_RIGHT, myThid ) |
| 48 |
|
|
WRITE(msgBuf,'(A)') '// Darwin loading parameters' |
| 49 |
|
|
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
| 50 |
|
|
& SQUEEZE_RIGHT, myThid ) |
| 51 |
|
|
WRITE(msgBuf,'(A)') |
| 52 |
|
|
&'// =======================================================' |
| 53 |
|
|
CALL PRINT_MESSAGE( msgBuf, standardMessageUnit, |
| 54 |
|
|
& SQUEEZE_RIGHT, myThid ) |
| 55 |
|
|
|
| 56 |
|
|
|
| 57 |
|
|
c ANNA set fixed params for WAVEBANDS |
| 58 |
|
|
#ifdef WAVEBANDS |
| 59 |
|
|
call wavebands_init_fixed(myThid) |
| 60 |
|
|
#endif |
| 61 |
|
|
|
| 62 |
|
|
c c define 1 day in seconds |
| 63 |
|
|
pday = 86400.0 _d 0 |
| 64 |
|
|
|
| 65 |
|
|
|
| 66 |
|
|
c attenuation coefficients |
| 67 |
|
|
c ANNA only if not wavebands |
| 68 |
|
|
#ifndef WAVEBANDS |
| 69 |
|
|
k0= 4. _d -2 !atten coefficient water(m^-1) |
| 70 |
|
|
#ifdef GEIDER |
| 71 |
|
|
kc= 4. _d -2 !atten coefficient chl ((mmol chl/m3)-1) |
| 72 |
|
|
#else |
| 73 |
|
|
kc= 4. _d -2*16. _d 0*1. _d 0 !atten coefficient phy((uM m)-1) |
| 74 |
|
|
#endif |
| 75 |
|
|
#endif |
| 76 |
|
|
c ANNA endif |
| 77 |
|
|
|
| 78 |
|
|
|
| 79 |
|
|
c par parameters |
| 80 |
|
|
parfrac= 0.4 _d 0 !fraction Qsw that is PAR |
| 81 |
|
|
parconv= 1. _d 0/0.2174 _d 0 !conversion from W/m2 to uEin/m2/s |
| 82 |
|
|
c for chl |
| 83 |
|
|
chlpmax=40. _d 0 ! mg Chl/mmolP |
| 84 |
|
|
chlpmin=16. _d 0 ! mg Chl/mmolP |
| 85 |
|
|
istar=90. _d 0 ! w/m2 |
| 86 |
|
|
c iron related |
| 87 |
|
|
alpfe= 0.04 _d 0 !solubility of Fe dust |
| 88 |
|
|
scav= 0.4 _d 0/(360. _d 0*86400. _d 0) !iron chem scavenging rate (s-1) |
| 89 |
|
|
ligand_tot=1. _d -3 !total ligand (uM) |
| 90 |
|
|
ligand_stab=2. _d 5 !ligand stability rate ratio |
| 91 |
|
|
freefemax = .4 _d -3 ! max free fe |
| 92 |
|
|
|
| 93 |
|
|
#ifdef IRON_SED_SOURCE |
| 94 |
|
|
c iron sediment source |
| 95 |
|
|
depthfesed=1000.0 _d 0 !depth above which to add sediment source |
| 96 |
|
|
fesedflux =1.0 _d 0 * 1.0 _d -3 / (86400.0 _d 0) !iron flux (mmol/m2/s) |
| 97 |
|
|
fesedflux_pcm =0.68 _d 0 * 1.0 _d -3 !iron flux (mmol/m3/s) per |
| 98 |
|
|
c mmol POC/m3/s |
| 99 |
|
|
#endif |
| 100 |
|
|
#ifdef PART_SCAV |
| 101 |
|
|
scav_rat=0.005 _d 0 /(86400.0 _d 0) |
| 102 |
|
|
scav_inter=0.079 _d 0 |
| 103 |
|
|
scav_exp=0.58 _d 0 |
| 104 |
|
|
#endif |
| 105 |
|
|
|
| 106 |
|
|
c depth for denitrification to start |
| 107 |
|
|
depthdenit=185.0 _d 0 |
| 108 |
|
|
|
| 109 |
|
|
c critical oxygen for O2/NO3 remineralization |
| 110 |
|
|
O2crit = 6.0 _d 0 !(Lipschultz et al 1990, DSR 37, 1513-1541) |
| 111 |
stephd |
1.7 |
c ratio of n to p in denitrification process |
| 112 |
jahn |
1.1 |
denit_np = 120.0 _d 0 |
| 113 |
stephd |
1.7 |
c ratio no3 used relative to all n in denitrification process |
| 114 |
|
|
denit_no3 = 104.0 _d 0 |
| 115 |
|
|
c critical nitrate below which no denit (or remin) happens |
| 116 |
|
|
no3crit = 1. _d -2 |
| 117 |
jahn |
1.1 |
c |
| 118 |
|
|
c oxidation rates for ammonium and nitrite |
| 119 |
|
|
c i.e. Knita ... NH4 -> NO2 |
| 120 |
|
|
c i.e. Knitb ... NO2 -> NO3 |
| 121 |
|
|
Knita = 1.0 _d 0/(.50 _d 0*pday) |
| 122 |
|
|
Knitb = 1.0 _d 0/(10.0 _d 0*pday) |
| 123 |
|
|
c critical light level (muEin/m2/s) after which oxidation starts |
| 124 |
|
|
PAR0 = 10. _d 0 |
| 125 |
|
|
c |
| 126 |
|
|
#ifndef GEIDER |
| 127 |
|
|
c set growth days ...small or big organism? |
| 128 |
|
|
Smallgrow = .7 _d 0 |
| 129 |
|
|
Biggrow = .4 _d 0 |
| 130 |
|
|
Smallgrowrange = 0. _d 0 |
| 131 |
|
|
Biggrowrange = 0. _d 0 |
| 132 |
|
|
diaz_growfac = 2. _d 0 |
| 133 |
|
|
#endif |
| 134 |
|
|
c set mort days ...small or big organism? |
| 135 |
|
|
Smallmort = 10. _d 0 |
| 136 |
|
|
Bigmort = 10. _d 0 |
| 137 |
|
|
Smallmortrange = 0. _d 0 |
| 138 |
|
|
Bigmortrange = 0. _d 0 |
| 139 |
|
|
c set export fraction ...small or big organism? |
| 140 |
|
|
Smallexport = 0.2 _d 0 |
| 141 |
|
|
Bigexport = 0.5 _d 0 |
| 142 |
|
|
c set sinking rates (m/s)... small or big organism? |
| 143 |
|
|
SmallSink = 0.0 _d 0/pday |
| 144 |
|
|
BigSink = 0.5 _d 0/pday !0.5 _d 0/pday |
| 145 |
|
|
c set parameters for light function for phyto growth |
| 146 |
|
|
#ifndef GEIDER |
| 147 |
|
|
smallksatpar = 0.12 _d 0 ! 0.8 _d 0 |
| 148 |
|
|
smallksatparstd = 0.20 _d 0 ! 0.3 _d 0 |
| 149 |
|
|
smallkinhib = 6.0 _d 0 ! 2.0 _d 0 |
| 150 |
|
|
smallkinhibstd = 0.10 _d 0 ! 0.5 _d 0 |
| 151 |
|
|
Bigksatpar = 0.12 _d 0 ! 0.35 _d 0 |
| 152 |
|
|
Bigksatparstd = 0.06 _d 0 ! 0.1 _d 0 |
| 153 |
|
|
Bigkinhib = 1.0 _d 0 ! 0.5 _d 0 |
| 154 |
|
|
Bigkinhibstd = 0.05 _d 0 ! 0.1 _d 0 |
| 155 |
|
|
#endif |
| 156 |
|
|
#ifdef GEIDER |
| 157 |
|
|
c for Pcm -- should be growth rates, but using old variables |
| 158 |
|
|
c note these are in terms of days - converted to 1/s later |
| 159 |
|
|
Smallgrow = .7 _d 0 |
| 160 |
|
|
Biggrow = .4 _d 0 |
| 161 |
|
|
Smallgrowrange = 0. _d 0 |
| 162 |
|
|
Biggrowrange = 0. _d 0 |
| 163 |
|
|
diaz_growfac = 2. _d 0 |
| 164 |
|
|
c |
| 165 |
|
|
smallchl2cmax = 0.2 _d 0 !mg Chl (mmol C) |
| 166 |
|
|
smallchl2cmaxrange = 0.3 _d 0 !mg Chl (mmol C) |
| 167 |
|
|
Bigchl2cmax = 0.5 _d 0 !mg Chl (mmol C) |
| 168 |
|
|
Bigchl2cmaxrange = 0.3 _d 0 !mg Chl (mmol C) |
| 169 |
|
|
|
| 170 |
|
|
c ANNA_Q units for alpha are same as expected: mmol C (mg chla)-1 (uEin)-1 (m)2 |
| 171 |
|
|
c smallalphachl = 1. _d -6 !mmol C (uEin/m-2)-1 (mg Chl)-1 |
| 172 |
|
|
c smallalphachlrange = 1. _d -6 !mmol C (uEin/m-2)-1 (mg Chl)-1 |
| 173 |
|
|
c Bigalphachl = 6. _d -7 !mmol C (uEin/m-2)-1 (mg Chl)-1 |
| 174 |
|
|
c Bigalphachlrange = 4. _d -7 !mmol C (uEin/m-2)-1 (mg Chl)-1 |
| 175 |
|
|
c ANNA mQyield vals are from alphachl / aphy_chl which for now is 0.02 |
| 176 |
|
|
c ANNA ranges for mQyield are same as alphachl but reduced by factor 100 |
| 177 |
|
|
smallmQyield = 5. _d -5 !mmol C (uEin)-1 |
| 178 |
|
|
smallmQyieldrange = 1. _d -4 !mmol C (uEin)-1 |
| 179 |
|
|
BigmQyield = 3. _d -5 !mmol C (uEin)-1 |
| 180 |
|
|
BigmQyieldrange = 4. _d -5 !mmol C (uEin)-1 |
| 181 |
|
|
|
| 182 |
|
|
c ANNA value of aphy_chl_ave = 0.02 - its the mean of all spectras used as input data |
| 183 |
|
|
aphy_chl_ave = 0.02 _d 0 !m2 (mg chla)-1 (ie. x chla gives absorption m-1) |
| 184 |
|
|
|
| 185 |
|
|
c inhib for Prochl? |
| 186 |
|
|
C inhibcoef_geid_val = 1.2 _d 0 !DUMMY VAL |
| 187 |
|
|
inhibcoef_geid_val = 0 _d 0 !DUMMY VAL |
| 188 |
|
|
#ifdef DYNAMIC_CHL |
| 189 |
|
|
acclimtimescl = 1./(60. _d 0 *60. _d 0 *24. _d 0 * 20. _d 0) |
| 190 |
|
|
#endif |
| 191 |
|
|
#endif |
| 192 |
|
|
c |
| 193 |
|
|
|
| 194 |
|
|
c set temperature function |
| 195 |
|
|
tempcoeff1 = 1. _d 0/3. _d 0 |
| 196 |
|
|
tempcoeff2_small = 0.001 _d 0 |
| 197 |
|
|
tempcoeff2_big = 0.0003 _d 0 |
| 198 |
|
|
tempcoeff3 = 1.04 _d 0 |
| 199 |
|
|
tempmax = 30. _d 0 ! 32. _d 0 |
| 200 |
|
|
temprange = 32. _d 0 ! 30. _d 0 |
| 201 |
|
|
tempnorm = 0.3 _d 0 ! 1. _d 0 |
| 202 |
|
|
tempdecay = 4. _d 0 |
| 203 |
|
|
c set phosphate half stauration constants .. small or big organism |
| 204 |
|
|
SmallPsat=0.015 _d 0 |
| 205 |
|
|
BigPsat=0.035 _d 0 |
| 206 |
|
|
ProcPsat=0.01 _d 0 |
| 207 |
|
|
UniDzPsat=0.012 _d 0 |
| 208 |
|
|
SmallPsatrange=0.02 _d 0 |
| 209 |
|
|
BigPsatrange=0.02 _d 0 |
| 210 |
|
|
ProcPsatrange=0.005 _d 0 |
| 211 |
|
|
UniDzPsatrange=0.02 _d 0 |
| 212 |
|
|
c set NH4/NO2 frac, so that NH4/NO2 can be preferred nitrogen source |
| 213 |
|
|
ksatNH4fac=.50 _d 0 |
| 214 |
|
|
ksatNO2fac=1.0 _d 0 |
| 215 |
|
|
c set prochl lower half-sat (used only for mutants) |
| 216 |
|
|
prochlPsat=.85 _d 0 |
| 217 |
|
|
c ammonia and nitrite inhibition |
| 218 |
|
|
sig1 = 4.6 _d 0 |
| 219 |
|
|
sig2 = 4.6 _d 0 |
| 220 |
|
|
sig3 = 4.6 _d 0 |
| 221 |
|
|
ngrowfac = 1. _d 0 |
| 222 |
|
|
ilight = 2. _d 0 |
| 223 |
|
|
c set si half sat |
| 224 |
|
|
val_ksatsi=1. _d 0 |
| 225 |
|
|
c set nutrient ratios for phyto |
| 226 |
stephd |
1.8 |
#ifdef ONLY_P_CYCLE |
| 227 |
|
|
val_R_SiP_diatom=0.0 _d 0 |
| 228 |
|
|
val_R_NP=0.0 _d 0 |
| 229 |
|
|
val_RFeP=0.0 _d -3 |
| 230 |
|
|
val_R_NP_diaz=0.0 _d 0 |
| 231 |
|
|
val_RFeP_diaz=0.0 _d 0 * val_RFeP |
| 232 |
|
|
val_R_PC=0.0 _d 0 |
| 233 |
|
|
val_R_PICPOC=0.0 _d 0 |
| 234 |
|
|
#else |
| 235 |
jahn |
1.1 |
val_R_SiP_diatom=16.0 _d 0 ! 32 for Fanny's runs |
| 236 |
|
|
val_R_NP=16.0 _d 0 |
| 237 |
|
|
val_RFeP=1.0 _d -3 |
| 238 |
|
|
val_R_NP_diaz=40.0 _d 0 |
| 239 |
|
|
val_RFeP_diaz=30.0 _d 0 * val_RFeP |
| 240 |
|
|
val_R_PC=120.0 _d 0 |
| 241 |
|
|
val_R_PICPOC=0.8 _d 0 |
| 242 |
stephd |
1.8 |
#endif |
| 243 |
|
|
c |
| 244 |
jahn |
1.1 |
#ifdef OLD_GRAZE |
| 245 |
|
|
c grazing hlaf saturation |
| 246 |
|
|
kgrazesat = 0.1 _d 0 |
| 247 |
|
|
c set grazing rates .. small or big organism? |
| 248 |
|
|
GrazeFast = 1.0 _d 0/(5.0 _d 0*pday) |
| 249 |
|
|
GrazeSlow = 1.0 _d 0/(30.0 _d 0*pday) |
| 250 |
|
|
c set grazing effeciency |
| 251 |
|
|
GrazeEffsmall=0.6 _d 0 |
| 252 |
|
|
GrazeEffbig =0.2 _d 0 |
| 253 |
|
|
c set grazing of diatom factor |
| 254 |
|
|
diatomgraz = 0.8 _d 0 |
| 255 |
|
|
coccograz = 0.7 _d 0 |
| 256 |
|
|
olargegraz = 0.9 _d 0 |
| 257 |
|
|
#else |
| 258 |
|
|
c grazing hlaf saturation |
| 259 |
|
|
c kgrazesat = 0.1 _d 0 |
| 260 |
|
|
kgrazesat = 0.1 _d 0 |
| 261 |
|
|
c phygrazmin = 1 _d -5 |
| 262 |
|
|
phygrazmin = 1 _d -10 |
| 263 |
|
|
c set grazing rates .. small or big organism? |
| 264 |
|
|
c GrazeFast = 1.0 _d 0/(5.0 _d 0*pday) |
| 265 |
|
|
GrazeFast = 1.0 _d 0/(2.0 _d 0*pday) |
| 266 |
|
|
c GrazeSlow = 1.0 _d 0/(30.0 _d 0*pday) |
| 267 |
|
|
GrazeSlow = 1.0 _d 0/(7.0 _d 0*pday) |
| 268 |
|
|
c set grazing effeciency |
| 269 |
|
|
GrazeEfflow= 0.2 _d 0 |
| 270 |
|
|
GrazeEffmod= 0.5 _d 0 |
| 271 |
|
|
GrazeEffhi = 0.7 _d 0 |
| 272 |
|
|
c set palatibility |
| 273 |
|
|
palathi = 1.0 _d 0 |
| 274 |
|
|
palatlo = 0.2 _d 0 |
| 275 |
|
|
c set palatibilty diatom factor |
| 276 |
|
|
diatomgraz = 0.7 _d 0 |
| 277 |
|
|
coccograz = 0.6 _d 0 |
| 278 |
|
|
olargegraz = 1.0 _d 0 |
| 279 |
|
|
c set faction graz to POM |
| 280 |
|
|
ExGrazfracbig = 0.8 _d 0 |
| 281 |
|
|
ExGrazfracsmall = 0.8 _d 0 |
| 282 |
stephd |
1.2 |
c grazing exponential 1= holling 2, 2=holling 3 |
| 283 |
|
|
hollexp=1.0 _d 0 |
| 284 |
jahn |
1.1 |
#endif |
| 285 |
|
|
c set zoo mortality |
| 286 |
|
|
ZoomortSmall = 1.0 _d 0/(30.0 _d 0*pday) |
| 287 |
|
|
ZoomortBig = 1.0 _d 0/(30.0 _d 0*pday) |
| 288 |
stephd |
1.3 |
ZoomortSmall2 = 0. _d 0 |
| 289 |
|
|
ZoomortBig2 = 0. _d 0 |
| 290 |
jahn |
1.1 |
c set zoo exportfrac |
| 291 |
|
|
ZooexfacSmall = 0.2 _d 0 |
| 292 |
|
|
ZooexfacBig = 0.7 _d 0 |
| 293 |
|
|
c minimum phyto (below which grazing and mortality doesn't happen) |
| 294 |
|
|
c phymin = 1 _d -10 |
| 295 |
|
|
c phymin = 1 _d -50 |
| 296 |
|
|
phymin = 1 _d -20 |
| 297 |
|
|
c DOM remin rates |
| 298 |
|
|
Kdop = 1.0 _d 0/(100.0 _d 0*pday) |
| 299 |
|
|
Kdon = 1.0 _d 0/(100.0 _d 0*pday) |
| 300 |
|
|
KdoFe = 1.0 _d 0/(100.0 _d 0*pday) |
| 301 |
|
|
c Particulate detritus remin rates |
| 302 |
|
|
c z* = wx_sink/Kremin_X |
| 303 |
|
|
c for e-folding length scale, z* = 300 m |
| 304 |
|
|
c choose Kremin_X = 1/30 day-1, wx_sink = 10 m day-1 |
| 305 |
|
|
Kpremin_P = 1.0 _d 0/(50.0 _d 0*pday) |
| 306 |
|
|
Kpremin_N = Kpremin_P |
| 307 |
|
|
Kpremin_Fe = Kpremin_P |
| 308 |
|
|
Kpremin_Si = 1.0 _d 0/(300.0 _d 0*pday) |
| 309 |
|
|
c sinking rate for particulate matter (m/s) |
| 310 |
|
|
wp_sink = 10.0 _d 0/pday |
| 311 |
|
|
wn_sink = wp_sink |
| 312 |
|
|
wfe_sink = wp_sink |
| 313 |
|
|
wsi_sink = wp_sink |
| 314 |
|
|
|
| 315 |
|
|
#ifdef ALLOW_CARBON |
| 316 |
|
|
R_OP = 170 _d 0 |
| 317 |
|
|
Kdoc = 1.0 _d 0/(100.0 _d 0*pday) |
| 318 |
|
|
Kpremin_C = 1.0 _d 0/(50.0 _d 0*pday) |
| 319 |
|
|
Kdissc = 1.0 _d 0/(300.0 _d 0*pday) |
| 320 |
|
|
wc_sink = wp_sink |
| 321 |
|
|
wpic_sink = 15.0 _d 0/pday |
| 322 |
|
|
permil = 1. _d 0 / 1024.5 _d 0 |
| 323 |
|
|
Pa2Atm = 1.01325 _d 5 |
| 324 |
|
|
#endif |
| 325 |
|
|
|
| 326 |
stephd |
1.5 |
#ifdef ALLOW_CDOM |
| 327 |
|
|
fraccdom=2. _d 0 / 100. _d 0 |
| 328 |
|
|
cdomdegrd= 1. _d 0 / (200 _d 0 *pday) |
| 329 |
|
|
cdombleach = 1. _d 0 / (15 _d 0 *pday) |
| 330 |
|
|
PARcdom = 20. _d 0 |
| 331 |
|
|
rnp_cdom = 16. _d 0 |
| 332 |
|
|
rfep_cdom = 1. _d -3 |
| 333 |
|
|
rcp_cdom = 120. _d 0 |
| 334 |
|
|
cdomcoeff = .1 _d -1 / 1.d -4 |
| 335 |
|
|
#endif |
| 336 |
|
|
|
| 337 |
jahn |
1.1 |
C make sure we have reserved enough space in Ptracers |
| 338 |
|
|
IF ( nCompZooMax .LT. 4 ) THEN |
| 339 |
stephd |
1.9 |
#ifndef ONLY_P_CYCLE |
| 340 |
jahn |
1.1 |
WRITE(msgBuf,'(A,A,I3)') |
| 341 |
|
|
& 'MONOD_INIT_FIXED: ERROR: 4 zooplankton components, but ', |
| 342 |
|
|
& 'nCompZooMax = ', nCompZooMax |
| 343 |
|
|
CALL PRINT_ERROR( msgBuf , 1) |
| 344 |
|
|
STOP 'ABNORMAL END: S/R MONOD_INIT_FIXED' |
| 345 |
stephd |
1.9 |
#endif |
| 346 |
jahn |
1.1 |
ENDIF |
| 347 |
|
|
DO nz = 1,nzmax |
| 348 |
|
|
iZooP (nz) = iZoo + (nz-1)*strideTypeZoo |
| 349 |
stephd |
1.6 |
#ifdef ONLY_P_CYCLE |
| 350 |
|
|
iZooN (nz) = nptot |
| 351 |
|
|
iZooFe(nz) = nptot |
| 352 |
|
|
iZooSi(nz) = nptot |
| 353 |
|
|
#else |
| 354 |
jahn |
1.1 |
iZooN (nz) = iZoo + 1*strideCompZoo + (nz-1)*strideTypeZoo |
| 355 |
|
|
iZooFe(nz) = iZoo + 2*strideCompZoo + (nz-1)*strideTypeZoo |
| 356 |
|
|
iZooSi(nz) = iZoo + 3*strideCompZoo + (nz-1)*strideTypeZoo |
| 357 |
stephd |
1.6 |
#endif |
| 358 |
jahn |
1.1 |
ENDDO |
| 359 |
|
|
#ifdef ALLOW_CARBON |
| 360 |
|
|
DO nz = 1,nzmax |
| 361 |
|
|
iZooC (nz) = iZoC + (nz-1) |
| 362 |
|
|
ENDDO |
| 363 |
|
|
#endif |
| 364 |
|
|
|
| 365 |
|
|
#ifdef DAR_DIAG_DIVER |
| 366 |
|
|
c only look at grid point with a minimum biomass |
| 367 |
|
|
diver_thresh0=1 _d -12 |
| 368 |
|
|
c diver1 - if any type greater than |
| 369 |
|
|
diver_thresh1=1 _d -8 |
| 370 |
|
|
c diver2 - if more than this proportion of total biomass |
| 371 |
|
|
diver_thresh2=1 _d -3 |
| 372 |
|
|
c diver3 - fraction of biomass to count |
| 373 |
|
|
diver_thresh3=.999 _d 0 |
| 374 |
|
|
c diver4 - fraction of maximum species |
| 375 |
|
|
diver_thresh4=1 _d -5 |
| 376 |
jahn |
1.4 |
c threshold on total biomass for contributing to Shannon and Simpson ind |
| 377 |
|
|
c (these become large at very small biomass) |
| 378 |
|
|
shannon_thresh = 1 _d -8 ! mmol P m-3 |
| 379 |
jahn |
1.1 |
#endif |
| 380 |
|
|
|
| 381 |
|
|
c set up diagnostics |
| 382 |
|
|
#ifdef ALLOW_MNC |
| 383 |
|
|
IF ( useMNC ) THEN |
| 384 |
|
|
CALL DARWIN_MNC_INIT( myThid ) |
| 385 |
|
|
#ifdef ALLOW_CARBON |
| 386 |
|
|
CALL DIC_MNC_INIT( myThid ) |
| 387 |
|
|
#endif |
| 388 |
|
|
ENDIF |
| 389 |
|
|
#endif /* ALLOW_MNC */ |
| 390 |
|
|
|
| 391 |
|
|
COJ set up diagnostics |
| 392 |
|
|
#ifdef ALLOW_DIAGNOSTICS |
| 393 |
|
|
IF ( useDIAGNOSTICS ) THEN |
| 394 |
|
|
CALL MONOD_DIAGNOSTICS_INIT( myThid ) |
| 395 |
|
|
#ifdef ALLOW_CARBON |
| 396 |
|
|
CALL DIC_DIAGNOSTICS_INIT( myThid ) |
| 397 |
|
|
#endif |
| 398 |
|
|
ENDIF |
| 399 |
|
|
#endif /* ALLOW_DIAGNOSTICS */ |
| 400 |
|
|
COJ |
| 401 |
|
|
|
| 402 |
jahn |
1.10 |
_END_MASTER(myThid) |
| 403 |
jahn |
1.1 |
|
| 404 |
jahn |
1.10 |
RETURN |
| 405 |
|
|
END |
| 406 |
jahn |
1.1 |
C============================================================================ |
| 407 |
|
|
#endif |
| 408 |
|
|
#endif |
| 409 |
|
|
|