1 |
benw |
1.2 |
C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/quota/QUOTA.h,v 1.1 2011/04/13 18:56:25 jahn Exp $ |
2 |
jahn |
1.1 |
C $Name: $ |
3 |
|
|
|
4 |
|
|
c QUOTA.h |
5 |
|
|
c description: Key parameter arrays for generalized ecosystem quota model |
6 |
|
|
c Ben Ward, Summer/Autumn 2009 |
7 |
|
|
c |
8 |
|
|
c adapted from |
9 |
|
|
c DARWIN.h |
10 |
|
|
c description: Key parameter arrays for generalized ecosystem model |
11 |
|
|
c Mick Follows, Scott Grant Fall/Winter 2005 |
12 |
|
|
c Stephanie Dutkiewicz Spring/Summer 2006 |
13 |
|
|
c |
14 |
|
|
c iimax = no of modelled nutrient elements |
15 |
|
|
c npmax = no of "functional groups" of plankton |
16 |
|
|
c komax = no of "functional groups" of organic matter |
17 |
|
|
c |
18 |
|
|
c Parameter arrays |
19 |
|
|
c NOTE: list not complete!! |
20 |
|
|
c |
21 |
|
|
c vmaxi(iimax,npmax) - maximum uptake rate for inorganic nutrients (and DIC) |
22 |
|
|
c kn(iimax,npmax) - 1/2 saturation concentration for inorganic nutrient uptake |
23 |
|
|
c biosynth - cost of biosynthesis |
24 |
|
|
c amminhib - ammonium inhibition |
25 |
|
|
c qcarbon(npmax) - Mean cell carbon content |
26 |
|
|
c qmin(iomax,npmax) - minimum quota required to sustain growth |
27 |
|
|
c qmax(iomax,npmax) - satiated quota (i.e. required for max growth rate) |
28 |
|
|
c alphachl(npmax) - chl specific initial slope of PI curve |
29 |
|
|
c chl2nmax - maximum cellular chl to nitrogen ratio |
30 |
|
|
c pp_opt(npmax) - optimal prd_pry preference ratio |
31 |
|
|
c pp_sig(npmax) - std.dev. of prd_pry preference ratio |
32 |
|
|
c graz_pref(npmax,npmax) - size ratio based lognormal grazing preference matrix |
33 |
|
|
c graz(npmax) - maximum grazing rate of predator |
34 |
|
|
c kg(npmax) - 1/2 saturation prey biomass for grazing |
35 |
|
|
c hollingtype - exponent of Holling grazing function |
36 |
|
|
c ass_eff - maximum assimilation efficiency |
37 |
|
|
c assim_graz(npmax,npmax) - assimilation efficiency of grazing |
38 |
|
|
c beta_graz(iomax-iChl,npmax) - fraction of sloppy feeding to DOM |
39 |
|
|
c kexc(iimax,npmax) - biomass specific excretion rate |
40 |
|
|
c kmort(npmax) - plankton specific mortality rate |
41 |
|
|
c beta_mort(iomax-iChl,npmax) - fraction of nortality to DOM |
42 |
|
|
c respiration(npmax) - respiration rate |
43 |
|
|
c |
44 |
|
|
c biosink(npmax) - plankton sinking rate |
45 |
|
|
c bioswim(npmax) - plankton swimming rate |
46 |
|
|
c orgsink(iimax,komax) - organic matter sinking rate |
47 |
|
|
c remin(iomax-iChl,komax) - organic matter remineralisation rate |
48 |
|
|
c amm2nrite - ammonium to nitrite oxidation rate |
49 |
|
|
c nrite2nrate - nitrite to nitrate oxidation rate |
50 |
|
|
c k_w - light attenuation by water |
51 |
|
|
c k_chl - light attenuation by chlorophyll |
52 |
|
|
c |
53 |
|
|
c use_NO3(npmax) - nitrate use on/off |
54 |
|
|
c use_Si(npmax) - silicate use on/off |
55 |
|
|
c autotrophy(npmax) - degree of autotrophy (1 = pure auto, 0 = pure hetero) |
56 |
|
|
c pft(npmax) - phytoplankton functional type |
57 |
|
|
c 1=prochlorococcus, 2=synechococcus, 3=small eukaryotes, |
58 |
|
|
c 4=diatoms, 5=dinoflagellates, 6=generic grazers |
59 |
|
|
c |
60 |
|
|
COMMON/quota_ecoparam/ |
61 |
|
|
& vmaxi,kn, |
62 |
|
|
& biosynth, |
63 |
|
|
& amminhib, |
64 |
|
|
& qcarbon, |
65 |
|
|
& qmin,qmax, |
66 |
|
|
& alphachl,chl2nmax, |
67 |
|
|
& pp_opt,pp_sig,graz_pref, |
68 |
|
|
& graz,kg, |
69 |
|
|
& ass_eff,assim_graz,beta_graz, |
70 |
|
|
& kexc, |
71 |
|
|
& kmort,beta_mort, |
72 |
|
|
& respiration, |
73 |
|
|
& biosink,bioswim,orgsink, |
74 |
|
|
& remin, |
75 |
|
|
& autotrophy, |
76 |
|
|
& pft, |
77 |
|
|
& amm2nrite,nrite2nrate, |
78 |
|
|
& k_w,k_chl, |
79 |
|
|
& phytoTempCoeff, phytoTempExp1, |
80 |
|
|
& phytoTempExp2, phytoTempOptimum, phytoDecayPower, |
81 |
|
|
& tempcoeff1, tempcoeff2_small, |
82 |
|
|
& tempcoeff2_big, tempcoeff3, |
83 |
|
|
& tempmax, temprange, tempnorm, tempdecay, |
84 |
|
|
& ngrowfac, ilight, |
85 |
|
|
& PAR0, |
86 |
benw |
1.2 |
#ifdef IRON_SED_SOURCE |
87 |
|
|
& depthfesed,fesedflux,fesedflux_pcm, |
88 |
|
|
#endif |
89 |
|
|
#ifdef PART_SCAV |
90 |
|
|
& scav_rat, scav_inter, scav_exp, |
91 |
|
|
#endif |
92 |
jahn |
1.1 |
& nsource,ngroups, |
93 |
|
|
& use_NO3,use_Si, |
94 |
|
|
& hollingtype |
95 |
|
|
|
96 |
|
|
_RL vmaxi(iimax,npmax) |
97 |
|
|
_RL kn(iimax,npmax) |
98 |
|
|
_RL biosynth |
99 |
|
|
_RL amminhib |
100 |
|
|
_RL qcarbon(npmax) |
101 |
|
|
_RL qmin(iomax,npmax) |
102 |
|
|
_RL qmax(iomax,npmax) |
103 |
|
|
_RL alphachl(npmax) |
104 |
|
|
_RL chl2nmax |
105 |
|
|
_RL pp_opt(npmax),pp_sig(npmax) |
106 |
|
|
_RL graz_pref(npmax,npmax) |
107 |
|
|
_RL graz(npmax) |
108 |
|
|
_RL kg(npmax) |
109 |
|
|
_RL ass_eff |
110 |
|
|
_RL assim_graz(npmax,npmax) |
111 |
|
|
_RL beta_graz(iomax-iChl,npmax) |
112 |
|
|
_RL kexc(iimax,npmax) |
113 |
|
|
_RL kmort(npmax) |
114 |
|
|
_RL beta_mort(iomax-iChl,npmax) |
115 |
|
|
_RL respiration(npmax) |
116 |
|
|
_RL biosink(npmax) |
117 |
|
|
_RL bioswim(npmax) |
118 |
|
|
_RL orgsink(komax) |
119 |
|
|
_RL remin(iomax-iChl,komax) |
120 |
|
|
c |
121 |
|
|
_RL autotrophy(npmax) |
122 |
|
|
c |
123 |
|
|
_RL amm2nrite |
124 |
|
|
_RL nrite2nrate |
125 |
|
|
_RL PAR0 |
126 |
|
|
_RL k_w |
127 |
|
|
_RL k_chl |
128 |
|
|
_RL phytoTempCoeff(npmax) |
129 |
|
|
_RL phytoTempExp1(npmax) |
130 |
|
|
_RL phytoTempExp2(npmax) |
131 |
|
|
_RL phytoTempOptimum(npmax) |
132 |
|
|
_RL phytoDecayPower(npmax) |
133 |
|
|
_RL tempcoeff1, tempcoeff2_big |
134 |
|
|
_RL tempcoeff2_small, tempcoeff3 |
135 |
|
|
_RL tempmax, temprange, tempnorm,tempdecay |
136 |
|
|
_RL ngrowfac,ilight |
137 |
benw |
1.2 |
#ifdef IRON_SED_SOURCE |
138 |
|
|
_RL depthfesed, fesedflux, fesedflux_pcm |
139 |
|
|
#endif |
140 |
|
|
#ifdef PART_SCAV |
141 |
|
|
_RL scav_rat, scav_inter, scav_exp |
142 |
|
|
#endif |
143 |
jahn |
1.1 |
INTEGER hollingtype |
144 |
|
|
INTEGER pft(npmax) |
145 |
|
|
INTEGER nsource(npmax) |
146 |
|
|
INTEGER ngroups |
147 |
|
|
INTEGER use_NO3(npmax) |
148 |
|
|
INTEGER use_Si(npmax) |
149 |
|
|
c |
150 |
|
|
c Power law intercepts and exponents, with errors |
151 |
|
|
c Note, while most errors are relative (times-divide), some are absolute (plus-minus) |
152 |
|
|
COMMON/quota_allometry/biovol,biovolmin,biovfactor, |
153 |
|
|
& a_vmaxi, b_vmaxi, |
154 |
|
|
& a_kn, b_kn, |
155 |
|
|
& a_qcarbon, b_qcarbon, |
156 |
|
|
& a_respir, b_respir, |
157 |
|
|
& a_qmin, b_qmin, |
158 |
|
|
& a_qmax, b_qmax, |
159 |
|
|
& a_alphachl, b_alphachl, |
160 |
|
|
& a_graz, b_graz, |
161 |
|
|
& a_kg, b_kg, |
162 |
|
|
& a_prdpry, b_prdpry, |
163 |
|
|
& a_kexc, b_kexc, |
164 |
|
|
& a_biosink, b_biosink, |
165 |
|
|
& a_bioswim, b_bioswim, |
166 |
|
|
& a_mort, b_mort, |
167 |
|
|
& a_beta_graz, b_beta_graz, |
168 |
|
|
& a_beta_mort, b_beta_mort, |
169 |
|
|
& ae_vmaxi, be_vmaxi, |
170 |
|
|
& ae_kn, be_kn, |
171 |
|
|
& ae_qcarbon, be_qcarbon, |
172 |
|
|
& ae_respir, be_respir, |
173 |
|
|
& ae_qmin, be_qmin, |
174 |
|
|
& ae_qmax, be_qmax, |
175 |
|
|
& ae_alphachl, be_alphachl, |
176 |
|
|
& ae_graz, be_graz, |
177 |
|
|
& ae_kg, be_kg, |
178 |
|
|
& ae_prdpry, be_prdpry, |
179 |
|
|
& ae_kexc, be_kexc, |
180 |
|
|
& ae_biosink, be_biosink, |
181 |
|
|
& ae_bioswim, be_bioswim, |
182 |
|
|
& ae_mort, be_mort, |
183 |
|
|
& ae_beta_graz,be_beta_graz, |
184 |
|
|
& ae_beta_mort,be_beta_mort |
185 |
|
|
|
186 |
|
|
_RL biovol(npmax),biovolmin,biovfactor |
187 |
|
|
_RL a_vmaxi(iimax) ,b_vmaxi(iimax) |
188 |
|
|
_RL a_kn(iimax) ,b_kn(iimax) |
189 |
|
|
_RL a_qcarbon ,b_qcarbon |
190 |
|
|
_RL a_respir ,b_respir |
191 |
|
|
_RL a_qmin(iomax) ,b_qmin(iomax) |
192 |
|
|
_RL a_qmax(iomax) ,b_qmax(iomax) |
193 |
|
|
_RL a_alphachl ,b_alphachl |
194 |
|
|
_RL a_graz ,b_graz |
195 |
|
|
_RL a_kg ,b_kg |
196 |
|
|
_RL a_prdpry ,b_prdpry |
197 |
|
|
_RL a_kexc(iomax) ,b_kexc(iomax) |
198 |
|
|
_RL a_biosink ,b_biosink |
199 |
|
|
_RL a_bioswim ,b_bioswim |
200 |
|
|
_RL a_mort ,b_mort |
201 |
|
|
_RL a_beta_graz(iomax-iChl) |
202 |
|
|
_RL b_beta_graz(iomax-iChl) |
203 |
|
|
_RL a_beta_mort(iomax-iChl) |
204 |
|
|
_RL b_beta_mort(iomax-iChl) |
205 |
|
|
_RL ae_vmaxi(iimax),be_vmaxi(iimax) |
206 |
|
|
_RL ae_kn(iimax) ,be_kn(iimax) |
207 |
|
|
_RL ae_qcarbon ,be_qcarbon |
208 |
|
|
_RL ae_respir ,be_respir |
209 |
|
|
_RL ae_qmin(iomax) ,be_qmin(iomax) |
210 |
|
|
_RL ae_qmax(iomax) ,be_qmax(iomax) |
211 |
|
|
_RL ae_alphachl ,be_alphachl |
212 |
|
|
_RL ae_graz ,be_graz |
213 |
|
|
_RL ae_kg ,be_kg |
214 |
|
|
_RL ae_prdpry ,be_prdpry |
215 |
|
|
_RL ae_kexc(iomax) ,be_kexc(iomax) |
216 |
|
|
_RL ae_biosink ,be_biosink |
217 |
|
|
_RL ae_bioswim ,be_bioswim |
218 |
|
|
_RL ae_mort ,be_mort |
219 |
|
|
_RL ae_beta_graz(iomax-iChl) |
220 |
|
|
_RL be_beta_graz(iomax-iChl) |
221 |
|
|
_RL ae_beta_mort(iomax-iChl) |
222 |
|
|
_RL be_beta_mort(iomax-iChl) |
223 |
|
|
|
224 |
|
|
c --------------------------------------------------------- |
225 |
|
|
c k0, kc - light coefficients |
226 |
|
|
COMMON/quota_lightparam/ k0, kc, parfrac, parconv |
227 |
|
|
_RL k0, kc, parfrac, parconv |
228 |
|
|
|
229 |
|
|
c chlpmax - chl:p max ratio |
230 |
|
|
c chlpmin - chl:p min ratio |
231 |
|
|
c istar - photoadaptation light limit |
232 |
|
|
c |
233 |
|
|
c --------------------------------------------------------- |
234 |
|
|
c |
235 |
|
|
COMMON/quota_chlparam/ chlpmax, chlpmin, istar |
236 |
|
|
_RL chlpmax, chlpmin, istar |
237 |
|
|
c |
238 |
|
|
c --------------------------------------------------------- |
239 |
|
|
c |
240 |
|
|
COMMON/quota_diags_param/ |
241 |
|
|
& diver_thresh0, diver_thresh1, |
242 |
|
|
& diver_thresh2, diver_thresh3, |
243 |
|
|
& diver_thresh4 |
244 |
|
|
|
245 |
|
|
_RL diver_thresh0, diver_thresh1 |
246 |
|
|
_RL diver_thresh2, diver_thresh3 |
247 |
|
|
_RL diver_thresh4 |
248 |
|
|
c |
249 |
|
|
c --------------------------------------------------------- |
250 |
|
|
c |