1 |
stephd |
1.3 |
C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/monod/MONOD_SIZE.h,v 1.2 2012/05/31 21:08:25 stephd Exp $ |
2 |
stephd |
1.2 |
C $Name: $ |
3 |
jahn |
1.1 |
|
4 |
|
|
c MONOD_SIZE.h |
5 |
|
|
c description: Size specification for generalized ecosystem model |
6 |
|
|
c Mick Follows, Scott Grant Fall/Winter 2005 |
7 |
|
|
c Stephanie Dutkiewicz Spring/Summer 2006 |
8 |
|
|
c |
9 |
|
|
c |
10 |
|
|
c npmax = no of "functional groups" of phytoplankton |
11 |
|
|
c nzmax = no of "functional groups" of zooplankton |
12 |
|
|
c |
13 |
|
|
c |
14 |
|
|
|
15 |
|
|
INTEGER npmax |
16 |
|
|
INTEGER nzmax |
17 |
|
|
PARAMETER(npmax=78,nzmax=2) |
18 |
|
|
|
19 |
|
|
C iPO4 :: index of PO4 in Ptracer |
20 |
|
|
C iNO3 :: index of NO3 in Ptracer |
21 |
|
|
C iFeT :: index of FeT in Ptracer |
22 |
|
|
C iSi :: index of Si in Ptracer |
23 |
|
|
C iDOP :: index of DOP in Ptracer |
24 |
|
|
C iDON :: index of DON in Ptracer |
25 |
|
|
C iDOFe :: index of DOFe in Ptracer |
26 |
|
|
C iPOP :: index of POP in Ptracer |
27 |
|
|
C iPON :: index of PON in Ptracer |
28 |
|
|
C iPOFe :: index of POFe in Ptracer |
29 |
|
|
C iPOSi :: index of POSi in Ptracer |
30 |
|
|
C iNH4 :: index of NH4 in Ptracer |
31 |
|
|
C iNO2 :: index of NO2 in Ptracer |
32 |
|
|
C iZoo :: index of first zooplankton |
33 |
|
|
C iPhy :: index of first phytoplankton |
34 |
|
|
C iChl :: index of first phytoplankton Chl (if using dynamic chl) |
35 |
stephd |
1.2 |
C iCDOM :: index of CDOM (if using CDOM) |
36 |
jahn |
1.1 |
C nDarwin :: total number of ptracers used by DARWIN |
37 |
|
|
C nCompZooMax :: maximum number of components each zooplankton can have (P,N,...) |
38 |
|
|
C strideCompZoo :: increment between components of zooplankton |
39 |
|
|
C :: iZooComp(nz) = iZoo+(nz-1)*strideTypeZoo+(iComp-1)*strideCompZoo |
40 |
|
|
C strideTypeZoo :: increment between types of zooplankton |
41 |
|
|
C :: iZooComp(nz) = iZoo+(nz-1)*strideTypeZoo+(iComp-1)*strideCompZoo |
42 |
|
|
C the only reasonable choices for the above two are: |
43 |
|
|
C strideCompZoo = 1 |
44 |
|
|
C strideTypeZoo = nCompZooMax |
45 |
|
|
C (the traditional choice) or |
46 |
|
|
C strideCompZoo = nzmax |
47 |
|
|
C strideTypeZoo = 1 |
48 |
|
|
C remember to bring the fields in data.ptracers in the right order ! |
49 |
|
|
|
50 |
|
|
INTEGER iPO4 |
51 |
|
|
INTEGER iNO3 |
52 |
|
|
INTEGER iFeT |
53 |
|
|
INTEGER iSi |
54 |
|
|
INTEGER iDOP |
55 |
|
|
INTEGER iDON |
56 |
|
|
INTEGER iDOFe |
57 |
|
|
INTEGER iPOP |
58 |
|
|
INTEGER iPON |
59 |
|
|
INTEGER iPOFe |
60 |
|
|
INTEGER iPOSi |
61 |
|
|
INTEGER iNH4 |
62 |
|
|
INTEGER iNO2 |
63 |
|
|
INTEGER iZoo |
64 |
|
|
INTEGER iPhy |
65 |
|
|
INTEGER nDarwin |
66 |
|
|
INTEGER nCompZooMax |
67 |
|
|
INTEGER strideCompZoo |
68 |
|
|
INTEGER strideTypeZoo |
69 |
|
|
INTEGER iTot |
70 |
stephd |
1.2 |
INTEGER nTOT |
71 |
jahn |
1.1 |
#ifdef ALLOW_CARBON |
72 |
|
|
INTEGER iDIC |
73 |
|
|
INTEGER iDOC |
74 |
|
|
INTEGER iPOC |
75 |
|
|
INTEGER iPIC |
76 |
|
|
INTEGER iALK |
77 |
|
|
INTEGER iO2 |
78 |
|
|
INTEGER iZoC |
79 |
|
|
#endif |
80 |
|
|
#ifdef DYNAMIC_CHL |
81 |
|
|
INTEGER iChl |
82 |
|
|
#endif |
83 |
stephd |
1.2 |
#ifdef ALLOW_CDOM |
84 |
|
|
INTEGER iCDOM |
85 |
|
|
#endif |
86 |
stephd |
1.3 |
#ifdef ONLY_P_CYCLE |
87 |
|
|
INTEGER nptot |
88 |
|
|
PARAMETERS (nptot=npmax+nzmax+4) |
89 |
|
|
c |
90 |
|
|
PARAMETER (nCompZooMax=1) |
91 |
|
|
PARAMETER (strideCompZoo=1) |
92 |
|
|
PARAMETER (strideTypeZoo=nCompZooMax) |
93 |
|
|
PARAMETER (iPO4 =1) |
94 |
|
|
PARAMETER (iNO3 =nptot) |
95 |
|
|
PARAMETER (iFeT =nptot) |
96 |
|
|
PARAMETER (iSi =nptot) |
97 |
|
|
PARAMETER (iDOP =2) |
98 |
|
|
PARAMETER (iDON =nptot) |
99 |
|
|
PARAMETER (iDOFe =nptot) |
100 |
|
|
PARAMETER (iZoo =3) |
101 |
|
|
PARAMETER (iPOP =iZoo+nzmax*nCompZooMax) |
102 |
|
|
PARAMETER (iPON =nptot ) |
103 |
|
|
PARAMETER (iPOFe =nptot ) |
104 |
|
|
PARAMETER (iPOSi =nptot ) |
105 |
|
|
PARAMETER (iNH4 =nptot ) |
106 |
|
|
PARAMETER (iNO2 =nptot ) |
107 |
|
|
PARAMETER (iPhy =iPOP +1) |
108 |
|
|
#ifdef DYNAMIC_CHL |
109 |
|
|
PARAMETER (iChl =iPhy +npmax) |
110 |
|
|
PARAMETER (iTOT =iPhy +npmax+npmax) |
111 |
|
|
#else |
112 |
|
|
PARAMETER (iTOT =iPhy +npmax) |
113 |
|
|
#endif |
114 |
|
|
#ifdef ALLOW_CDOM |
115 |
|
|
PARAMETER (iCDOM =iTOT) |
116 |
|
|
PARAMETER (nTOT = iCDOM+1) |
117 |
|
|
#else |
118 |
|
|
PARAMETER (nTOT =iTOT) |
119 |
|
|
#endif |
120 |
|
|
PARAMETER (nDarwin=nTOT-1) |
121 |
|
|
#else ! ALL NUTRIENT CYCLES |
122 |
jahn |
1.1 |
PARAMETER (nCompZooMax=4) |
123 |
|
|
PARAMETER (strideCompZoo=1) |
124 |
|
|
PARAMETER (strideTypeZoo=nCompZooMax) |
125 |
|
|
PARAMETER (iPO4 =1) |
126 |
|
|
PARAMETER (iNO3 =2) |
127 |
|
|
PARAMETER (iFeT =3) |
128 |
|
|
PARAMETER (iSi =4) |
129 |
|
|
PARAMETER (iDOP =5) |
130 |
|
|
PARAMETER (iDON =6) |
131 |
|
|
PARAMETER (iDOFe =7) |
132 |
|
|
PARAMETER (iZoo =8) |
133 |
|
|
PARAMETER (iPOP =iZoo+nzmax*nCompZooMax) |
134 |
|
|
PARAMETER (iPON =iPOP +1) |
135 |
|
|
PARAMETER (iPOFe =iPON +1) |
136 |
|
|
PARAMETER (iPOSi =iPOFe +1) |
137 |
|
|
PARAMETER (iNH4 =iPOSi +1) |
138 |
|
|
PARAMETER (iNO2 =iNH4 +1) |
139 |
|
|
PARAMETER (iPhy =iNO2 +1) |
140 |
|
|
#ifdef DYNAMIC_CHL |
141 |
|
|
PARAMETER (iChl =iPhy +npmax) |
142 |
|
|
PARAMETER (iTOT =iPhy +npmax+npmax) |
143 |
|
|
#else |
144 |
|
|
PARAMETER (iTOT =iPhy +npmax) |
145 |
|
|
#endif |
146 |
stephd |
1.2 |
#ifdef ALLOW_CDOM |
147 |
|
|
PARAMETER (iCDOM =iTOT) |
148 |
|
|
PARAMETER (nTOT = iCDOM+1) |
149 |
|
|
#else |
150 |
|
|
PARAMETER (nTOT =iTOT) |
151 |
|
|
#endif |
152 |
jahn |
1.1 |
#ifdef ALLOW_CARBON |
153 |
stephd |
1.2 |
PARAMETER (iDIC =nTOT) |
154 |
jahn |
1.1 |
PARAMETER (iDOC =iDIC+1) |
155 |
|
|
PARAMETER (iPOC =iDOC+1) |
156 |
|
|
PARAMETER (iPIC =iPOC+1) |
157 |
|
|
PARAMETER (iALK =iPIC+1) |
158 |
|
|
PARAMETER (iO2 =iALK+1) |
159 |
|
|
PARAMETER (iZoC =iO2+1) |
160 |
|
|
PARAMETER (nDarwin=iZoC+nzmax-1) |
161 |
|
|
#else |
162 |
stephd |
1.2 |
PARAMETER (nDarwin=nTOT-1) |
163 |
jahn |
1.1 |
#endif |
164 |
stephd |
1.3 |
#endif |
165 |
stephd |
1.2 |
|
166 |
|
|
|
167 |
jahn |
1.1 |
C iZooP(nzmax) :: index of phosphorus content of each zooplankton type |
168 |
|
|
C iZooN(nzmax) :: index of nitrogen content of each zooplankton type |
169 |
|
|
C iZooFe(nzmax) :: index of iron content of each zooplankton type |
170 |
|
|
C iZooSi(nzmax) :: index of silica content of each zooplankton type |
171 |
|
|
C these are computed in darwin_init_fixed from iZoo, strideCompZoo and strideTypeZoo |
172 |
|
|
INTEGER iZooP (nzmax) |
173 |
|
|
INTEGER iZooN (nzmax) |
174 |
|
|
INTEGER iZooFe(nzmax) |
175 |
|
|
INTEGER iZooSi(nzmax) |
176 |
|
|
#ifdef ALLOW_CARBON |
177 |
|
|
INTEGER iZooC(nzmax) |
178 |
|
|
#endif |
179 |
|
|
COMMON/DARWIN_SIZE/ iZooP, iZooN, iZooFe, iZooSi |
180 |
|
|
#ifdef ALLOW_CARBON |
181 |
|
|
& ,iZooC |
182 |
|
|
#endif |
183 |
|
|
|
184 |
|
|
|