1 |
C $Header: /u/gcmpack/MITgcm_contrib/darwin/pkg/darwin/DARWIN.h,v 1.8 2009/03/10 20:44:30 stephd Exp $ |
2 |
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 |
& nsource,ngroups, |
87 |
& use_NO3,use_Si, |
88 |
& hollingtype |
89 |
|
90 |
_RL vmaxi(iimax,npmax) |
91 |
_RL kn(iimax,npmax) |
92 |
_RL biosynth |
93 |
_RL amminhib |
94 |
_RL qcarbon(npmax) |
95 |
_RL qmin(iomax,npmax) |
96 |
_RL qmax(iomax,npmax) |
97 |
_RL alphachl(npmax) |
98 |
_RL chl2nmax |
99 |
_RL pp_opt(npmax),pp_sig(npmax) |
100 |
_RL graz_pref(npmax,npmax) |
101 |
_RL graz(npmax) |
102 |
_RL kg(npmax) |
103 |
_RL ass_eff |
104 |
_RL assim_graz(npmax,npmax) |
105 |
_RL beta_graz(iomax-iChl,npmax) |
106 |
_RL kexc(iimax,npmax) |
107 |
_RL kmort(npmax) |
108 |
_RL beta_mort(iomax-iChl,npmax) |
109 |
_RL respiration(npmax) |
110 |
_RL biosink(npmax) |
111 |
_RL bioswim(npmax) |
112 |
_RL orgsink(komax) |
113 |
_RL remin(iomax-iChl,komax) |
114 |
c |
115 |
_RL autotrophy(npmax) |
116 |
c |
117 |
_RL amm2nrite |
118 |
_RL nrite2nrate |
119 |
_RL PAR0 |
120 |
_RL k_w |
121 |
_RL k_chl |
122 |
_RL phytoTempCoeff(npmax) |
123 |
_RL phytoTempExp1(npmax) |
124 |
_RL phytoTempExp2(npmax) |
125 |
_RL phytoTempOptimum(npmax) |
126 |
_RL phytoDecayPower(npmax) |
127 |
_RL tempcoeff1, tempcoeff2_big |
128 |
_RL tempcoeff2_small, tempcoeff3 |
129 |
_RL tempmax, temprange, tempnorm,tempdecay |
130 |
_RL ngrowfac,ilight |
131 |
c |
132 |
INTEGER hollingtype |
133 |
INTEGER pft(npmax) |
134 |
INTEGER nsource(npmax) |
135 |
INTEGER ngroups |
136 |
INTEGER use_NO3(npmax) |
137 |
INTEGER use_Si(npmax) |
138 |
c |
139 |
c Power law intercepts and exponents, with errors |
140 |
c Note, while most errors are relative (times-divide), some are absolute (plus-minus) |
141 |
COMMON/quota_allometry/biovol,biovolmin,biovfactor, |
142 |
& a_vmaxi, b_vmaxi, |
143 |
& a_kn, b_kn, |
144 |
& a_qcarbon, b_qcarbon, |
145 |
& a_respir, b_respir, |
146 |
& a_qmin, b_qmin, |
147 |
& a_qmax, b_qmax, |
148 |
& a_alphachl, b_alphachl, |
149 |
& a_graz, b_graz, |
150 |
& a_kg, b_kg, |
151 |
& a_prdpry, b_prdpry, |
152 |
& a_kexc, b_kexc, |
153 |
& a_biosink, b_biosink, |
154 |
& a_bioswim, b_bioswim, |
155 |
& a_mort, b_mort, |
156 |
& a_beta_graz, b_beta_graz, |
157 |
& a_beta_mort, b_beta_mort, |
158 |
& ae_vmaxi, be_vmaxi, |
159 |
& ae_kn, be_kn, |
160 |
& ae_qcarbon, be_qcarbon, |
161 |
& ae_respir, be_respir, |
162 |
& ae_qmin, be_qmin, |
163 |
& ae_qmax, be_qmax, |
164 |
& ae_alphachl, be_alphachl, |
165 |
& ae_graz, be_graz, |
166 |
& ae_kg, be_kg, |
167 |
& ae_prdpry, be_prdpry, |
168 |
& ae_kexc, be_kexc, |
169 |
& ae_biosink, be_biosink, |
170 |
& ae_bioswim, be_bioswim, |
171 |
& ae_mort, be_mort, |
172 |
& ae_beta_graz,be_beta_graz, |
173 |
& ae_beta_mort,be_beta_mort |
174 |
|
175 |
_RL biovol(npmax),biovolmin,biovfactor |
176 |
_RL a_vmaxi(iimax) ,b_vmaxi(iimax) |
177 |
_RL a_kn(iimax) ,b_kn(iimax) |
178 |
_RL a_qcarbon ,b_qcarbon |
179 |
_RL a_respir ,b_respir |
180 |
_RL a_qmin(iomax) ,b_qmin(iomax) |
181 |
_RL a_qmax(iomax) ,b_qmax(iomax) |
182 |
_RL a_alphachl ,b_alphachl |
183 |
_RL a_graz ,b_graz |
184 |
_RL a_kg ,b_kg |
185 |
_RL a_prdpry ,b_prdpry |
186 |
_RL a_kexc(iomax) ,b_kexc(iomax) |
187 |
_RL a_biosink ,b_biosink |
188 |
_RL a_bioswim ,b_bioswim |
189 |
_RL a_mort ,b_mort |
190 |
_RL a_beta_graz(iomax-iChl) |
191 |
_RL b_beta_graz(iomax-iChl) |
192 |
_RL a_beta_mort(iomax-iChl) |
193 |
_RL b_beta_mort(iomax-iChl) |
194 |
_RL ae_vmaxi(iimax),be_vmaxi(iimax) |
195 |
_RL ae_kn(iimax) ,be_kn(iimax) |
196 |
_RL ae_qcarbon ,be_qcarbon |
197 |
_RL ae_respir ,be_respir |
198 |
_RL ae_qmin(iomax) ,be_qmin(iomax) |
199 |
_RL ae_qmax(iomax) ,be_qmax(iomax) |
200 |
_RL ae_alphachl ,be_alphachl |
201 |
_RL ae_graz ,be_graz |
202 |
_RL ae_kg ,be_kg |
203 |
_RL ae_prdpry ,be_prdpry |
204 |
_RL ae_kexc(iomax) ,be_kexc(iomax) |
205 |
_RL ae_biosink ,be_biosink |
206 |
_RL ae_bioswim ,be_bioswim |
207 |
_RL ae_mort ,be_mort |
208 |
_RL ae_beta_graz(iomax-iChl) |
209 |
_RL be_beta_graz(iomax-iChl) |
210 |
_RL ae_beta_mort(iomax-iChl) |
211 |
_RL be_beta_mort(iomax-iChl) |
212 |
|
213 |
c --------------------------------------------------------- |
214 |
c k0, kc - light coefficients |
215 |
COMMON/quota_lightparam/ k0, kc, parfrac, parconv |
216 |
_RL k0, kc, parfrac, parconv |
217 |
|
218 |
c chlpmax - chl:p max ratio |
219 |
c chlpmin - chl:p min ratio |
220 |
c istar - photoadaptation light limit |
221 |
c |
222 |
c --------------------------------------------------------- |
223 |
c |
224 |
COMMON/quota_chlparam/ chlpmax, chlpmin, istar |
225 |
_RL chlpmax, chlpmin, istar |
226 |
c |
227 |
c --------------------------------------------------------- |
228 |
c |
229 |
COMMON/quota_diags_param/ |
230 |
& diver_thresh0, diver_thresh1, |
231 |
& diver_thresh2, diver_thresh3, |
232 |
& diver_thresh4 |
233 |
|
234 |
_RL diver_thresh0, diver_thresh1 |
235 |
_RL diver_thresh2, diver_thresh3 |
236 |
_RL diver_thresh4 |
237 |
c |
238 |
c --------------------------------------------------------- |
239 |
c |