ROMS
Loading...
Searching...
No Matches
fennel_var.h
Go to the documentation of this file.
1/*
2** git $id$
3*************************************************** hernan g. arango ***
4** copyright(c) 2002-2025 the roms group **
5** licensed under a mit/x style license **
6** see license_roms.md **
7************************************************************************
8** **
9** assigns metadata indices for the fennel et al. (2006) ecosystem **
10** model variables that are used in input and output netcdf files. **
11** the metadata information is read from "varinfo.yaml". **
12** **
13** this file is included in file "mod_ncparam.F", routine **
14** "initialize_ncparm". **
15** **
16************************************************************************
17*/
18
19/*
20** model state biological tracers.
21*/
22
23 CASE ('idTvar(iNO3_)')
24 idtvar(ino3_)=varid
25 CASE ('idTvar(iNH4_)')
26 idtvar(inh4_)=varid
27#ifdef PO4
28 CASE ('idTvar(iPO4_)')
29 idtvar(ipo4_)=varid
30#endif
31 CASE ('idTvar(iPhyt)')
32 idtvar(iphyt)=varid
33 CASE ('idTvar(iZoop)')
34 idtvar(izoop)=varid
35 CASE ('idTvar(iLDeN)')
36 idtvar(ilden)=varid
37 CASE ('idTvar(iSDeN)')
38 idtvar(isden)=varid
39 CASE ('idTvar(iChlo)')
40 idtvar(ichlo)=varid
41#ifdef CARBON
42 CASE ('idTvar(iTIC_)')
43 idtvar(itic_)=varid
44 CASE ('idTvar(iTAlk)')
45 idtvar(italk)=varid
46 CASE ('idTvar(iLDeC)')
47 idtvar(ildec)=varid
48 CASE ('idTvar(iSDeC)')
49 idtvar(isdec)=varid
50#endif
51#ifdef OXYGEN
52 CASE ('idTvar(iOxyg)')
53 idtvar(ioxyg)=varid
54#endif
55#ifdef RIVER_DON
56 CASE ('idTvar(iRDeN)')
57 idtvar(irden)=varid
58# ifdef CARBON
59 CASE ('idTvar(iRDeC)')
60 idtvar(irdec)=varid
61# endif
62#endif
63
64/*
65** adjoint sensitivity state biological tracers.
66*/
67
68#if defined AD_SENSITIVITY || defined I4DVAR_ANA_SENSITIVITY || \
69 defined opt_observations || defined sensitivity_4dvar || \
70 defined so_semi
71 CASE ('idTads(iNO3_)')
72 idtads(ino3_)=varid
73 CASE ('idTads(iNH4_)')
74 idtads(inh4_)=varid
75# ifdef PO4
76 CASE ('idTads(iPO4_)')
77 idtads(ipo4_)=varid
78# endif
79 CASE ('idTads(iPhyt)')
80 idtads(iphyt)=varid
81 CASE ('idTads(iZoop)')
82 idtads(izoop)=varid
83 CASE ('idTads(iLDeN)')
84 idtads(ilden)=varid
85 CASE ('idTads(iSDeN)')
86 idtads(isden)=varid
87 CASE ('idTads(iChlo)')
88 idtads(ichlo)=varid
89# ifdef CARBON
90 CASE ('idTads(iTIC_)')
91 idtads(itic_)=varid
92 CASE ('idTads(iTAlk)')
93 idtads(italk)=varid
94 CASE ('idTads(iLDeC)')
95 idtads(ildec)=varid
96 CASE ('idTads(iSDeC)')
97 idtads(isdec)=varid
98# endif
99# ifdef OXYGEN
100 CASE ('idTads(iOxyg)')
101 idtads(ioxyg)=varid
102# endif
103# ifdef RIVER_DON
104 CASE ('idTads(iRDeN)')
105 idtads(irden)=varid
106# ifdef CARBON
107 CASE ('idTads(iRDeC)')
108 idtads(irdec)=varid
109# endif
110# endif
111#endif
112
113/*
114** biological tracers open boundary conditions.
115*/
116
117 CASE ('idTbry(iwest,iNO3_)')
118 idtbry(iwest,ino3_)=varid
119 CASE ('idTbry(ieast,iNO3_)')
120 idtbry(ieast,ino3_)=varid
121 CASE ('idTbry(isouth,iNO3_)')
122 idtbry(isouth,ino3_)=varid
123 CASE ('idTbry(inorth,iNO3_)')
124 idtbry(inorth,ino3_)=varid
125
126 CASE ('idTbry(iwest,iNH4_)')
127 idtbry(iwest,inh4_)=varid
128 CASE ('idTbry(ieast,iNH4_)')
129 idtbry(ieast,inh4_)=varid
130 CASE ('idTbry(isouth,iNH4_)')
131 idtbry(isouth,inh4_)=varid
132 CASE ('idTbry(inorth,iNH4_)')
133 idtbry(inorth,inh4_)=varid
134
135#ifdef PO4
136 CASE ('idTbry(iwest,iPO4_)')
137 idtbry(iwest,ipo4_)=varid
138 CASE ('idTbry(ieast,iPO4_)')
139 idtbry(ieast,ipo4_)=varid
140 CASE ('idTbry(isouth,iPO4_)')
141 idtbry(isouth,ipo4_)=varid
142 CASE ('idTbry(inorth,iPO4_)')
143 idtbry(inorth,ipo4_)=varid
144#endif
145 CASE ('idTbry(iwest,iPhyt)')
146 idtbry(iwest,iphyt)=varid
147 CASE ('idTbry(ieast,iPhyt)')
148 idtbry(ieast,iphyt)=varid
149 CASE ('idTbry(isouth,iPhyt)')
150 idtbry(isouth,iphyt)=varid
151 CASE ('idTbry(inorth,iPhyt)')
152 idtbry(inorth,iphyt)=varid
153
154 CASE ('idTbry(iwest,iZoop)')
155 idtbry(iwest,izoop)=varid
156 CASE ('idTbry(ieast,iZoop)')
157 idtbry(ieast,izoop)=varid
158 CASE ('idTbry(isouth,iZoop)')
159 idtbry(isouth,izoop)=varid
160 CASE ('idTbry(inorth,iZoop)')
161 idtbry(inorth,izoop)=varid
162
163 CASE ('idTbry(iwest,iSDeN)')
164 idtbry(iwest,isden)=varid
165 CASE ('idTbry(ieast,iSDeN)')
166 idtbry(ieast,isden)=varid
167 CASE ('idTbry(isouth,iSDeN)')
168 idtbry(isouth,isden)=varid
169 CASE ('idTbry(inorth,iSDeN)')
170 idtbry(inorth,isden)=varid
171
172 CASE ('idTbry(iwest,iLDeN)')
173 idtbry(iwest,ilden)=varid
174 CASE ('idTbry(ieast,iLDeN)')
175 idtbry(ieast,ilden)=varid
176 CASE ('idTbry(isouth,iLDeN)')
177 idtbry(isouth,ilden)=varid
178 CASE ('idTbry(inorth,iLDeN)')
179 idtbry(inorth,ilden)=varid
180
181 CASE ('idTbry(iwest,iChlo)')
182 idtbry(iwest,ichlo)=varid
183 CASE ('idTbry(ieast,iChlo)')
184 idtbry(ieast,ichlo)=varid
185 CASE ('idTbry(isouth,iChlo)')
186 idtbry(isouth,ichlo)=varid
187 CASE ('idTbry(inorth,iChlo)')
188 idtbry(inorth,ichlo)=varid
189
190#ifdef CARBON
191 CASE ('idTbry(iwest,iSDeC)')
192 idtbry(iwest,isdec)=varid
193 CASE ('idTbry(ieast,iSDeC)')
194 idtbry(ieast,isdec)=varid
195 CASE ('idTbry(isouth,iSDeC)')
196 idtbry(isouth,isdec)=varid
197 CASE ('idTbry(inorth,iSDeC)')
198 idtbry(inorth,isdec)=varid
199
200 CASE ('idTbry(iwest,iLDeC)')
201 idtbry(iwest,ildec)=varid
202 CASE ('idTbry(ieast,iLDeC)')
203 idtbry(ieast,ildec)=varid
204 CASE ('idTbry(isouth,iLDeC)')
205 idtbry(isouth,ildec)=varid
206 CASE ('idTbry(inorth,iLDeC)')
207 idtbry(inorth,ildec)=varid
208
209 CASE ('idTbry(iwest,iTIC_)')
210 idtbry(iwest,itic_)=varid
211 CASE ('idTbry(ieast,iTIC_)')
212 idtbry(ieast,itic_)=varid
213 CASE ('idTbry(isouth,iTIC_)')
214 idtbry(isouth,itic_)=varid
215 CASE ('idTbry(inorth,iTIC_)')
216 idtbry(inorth,itic_)=varid
217
218 CASE ('idTbry(iwest,iTAlk)')
219 idtbry(iwest,italk)=varid
220 CASE ('idTbry(ieast,iTAlk)')
221 idtbry(ieast,italk)=varid
222 CASE ('idTbry(isouth,iTAlk)')
223 idtbry(isouth,italk)=varid
224 CASE ('idTbry(inorth,iTAlk)')
225 idtbry(inorth,italk)=varid
226#endif
227#ifdef OXYGEN
228 CASE ('idTbry(iwest,iOxyg)')
229 idtbry(iwest,ioxyg)=varid
230 CASE ('idTbry(ieast,iOxyg)')
231 idtbry(ieast,ioxyg)=varid
232 CASE ('idTbry(isouth,iOxyg)')
233 idtbry(isouth,ioxyg)=varid
234 CASE ('idTbry(inorth,iOxyg)')
235 idtbry(inorth,ioxyg)=varid
236#endif
237#ifdef RIVER_DON
238 CASE ('idTbry(iwest,iRDeN)')
239 idtbry(iwest,irden)=varid
240 CASE ('idTbry(ieast,iRDeN)')
241 idtbry(ieast,irden)=varid
242 CASE ('idTbry(isouth,iRDeN)')
243 idtbry(isouth,irden)=varid
244 CASE ('idTbry(inorth,iRDeN)')
245 idtbry(inorth,irden)=varid
246# ifdef CARBON
247 CASE ('idTbry(iwest,iRDeC)')
248 idtbry(iwest,irdec)=varid
249 CASE ('idTbry(ieast,iRDeC)')
250 idtbry(ieast,irdec)=varid
251 CASE ('idTbry(isouth,iRDeC)')
252 idtbry(isouth,irdec)=varid
253 CASE ('idTbry(inorth,iRDeC)')
254 idtbry(inorth,irdec)=varid
255# endif
256#endif
257
258/*
259** biological tracers point source/sinks(river runoff).
260*/
261
262 CASE ('idRtrc(iNO3_)')
263 idrtrc(ino3_)=varid
264 CASE ('idRtrc(iNH4_)')
265 idrtrc(inh4_)=varid
266#ifdef PO4
267 CASE ('idRtrc(iPO4_)')
268 idrtrc(ipo4_)=varid
269#endif
270 CASE ('idRtrc(iPhyt)')
271 idrtrc(iphyt)=varid
272 CASE ('idRtrc(iZoop)')
273 idrtrc(izoop)=varid
274 CASE ('idRtrc(iLDeN)')
275 idrtrc(ilden)=varid
276 CASE ('idRtrc(iSDeN)')
277 idrtrc(isden)=varid
278 CASE ('idRtrc(iChlo)')
279 idrtrc(ichlo)=varid
280#ifdef CARBON
281 CASE ('idRtrc(iTIC_)')
282 idrtrc(itic_)=varid
283 CASE ('idRtrc(iTAlk)')
284 idrtrc(italk)=varid
285 CASE ('idRtrc(iLDeC)')
286 idrtrc(ildec)=varid
287 CASE ('idRtrc(iSDeC)')
288 idrtrc(isdec)=varid
289#endif
290#ifdef OXYGEN
291 CASE ('idRtrc(iOxyg)')
292 idrtrc(ioxyg)=varid
293#endif
294#ifdef RIVER_DON
295 CASE ('idRtrc(iRDeN)')
296 idrtrc(irden)=varid
297# ifdef CARBON
298 CASE ('idRtrc(iRDeC)')
299 idrtrc(irdec)=varid
300# endif
301#endif
302
303
304#ifdef DIAGNOSTICS_BIO
305
306/*
307** biological tracers term diagnostics.
308*/
309
310# ifdef DENITRIFICATION
311 CASE ('iDbio2(iDNIT)')
312 idbio2(idnit)=varid
313# endif
314# ifdef CARBON
315 CASE ('iDbio2(iCOfx)')
316 idbio2(icofx)=varid
317 CASE ('iDbio2(ipCO2)')
318 idbio2(ipco2)=varid
319# endif
320# ifdef OXYGEN
321 CASE ('iDbio2(iO2fx)')
322 idbio2(io2fx)=varid
323# endif
324 CASE ('iDbio3(iPPro)')
325 idbio3(ippro)=varid
326 CASE ('iDbio3(iNO3u)')
327 idbio3(ino3u)=varid
328 CASE ('iDbio3(iNifx)')
329 idbio3(inifx)=varid
330#endif
subroutine output(ng)
Definition output.F:4