/[MITgcm]/MITgcm_contrib/darwin2/pkg/quota/quota_init_fixed.F
ViewVC logotype

Annotation of /MITgcm_contrib/darwin2/pkg/quota/quota_init_fixed.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (hide annotations) (download)
Fri Jan 17 17:59:30 2014 UTC (11 years, 6 months ago) by jahn
Branch: MAIN
CVS Tags: ctrb_darwin2_ckpt65j_20150225, ctrb_darwin2_ckpt65_20140718, ctrb_darwin2_ckpt65e_20140929, ctrb_darwin2_ckpt64v_20140411, ctrb_darwin2_ckpt64z_20140711, ctrb_darwin2_ckpt65l_20150504, ctrb_darwin2_ckpt64y_20140622, ctrb_darwin2_ckpt65d_20140915, ctrb_darwin2_ckpt64t_20140202, ctrb_darwin2_ckpt64x_20140524, ctrb_darwin2_ckpt65g_20141120, ctrb_darwin2_ckpt65k_20150402, ctrb_darwin2_ckpt64w_20140502, ctrb_darwin2_ckpt65f_20141014, ctrb_darwin2_ckpt64u_20140308, ctrb_darwin2_ckpt65i_20150123, ctrb_darwin2_ckpt65a_20140728, ctrb_darwin2_ckpt65b_20140812, ctrb_darwin2_ckpt65c_20140830, ctrb_darwin2_ckpt65h_20141217
Changes since 1.2: +2 -2 lines
fix diagnostics pkg bits (only PP diagnostic for now)

1 jahn 1.3 C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/quota/quota_init_fixed.F,v 1.2 2012/07/02 09:53:21 benw Exp $
2 jahn 1.1 C $Name: $
3    
4     #include "CPP_OPTIONS.h"
5     #include "PTRACERS_OPTIONS.h"
6     #include "DARWIN_OPTIONS.h"
7    
8     #ifdef ALLOW_PTRACERS
9     #ifdef ALLOW_DARWIN
10     #ifdef ALLOW_QUOTA
11    
12     c===============================================================================
13     C===============================================================================
14     CStartofinterface
15     SUBROUTINE QUOTA_INIT_FIXED(myThid)
16     C =============== Global data ==========================================
17     C === Global variables ===
18     implicit none
19     #include "SIZE.h"
20     #include "EEPARAMS.h"
21     #include "PARAMS.h"
22     #include "GRID.h"
23     #include "DYNVARS.h"
24     #include "GCHEM.h"
25     #include "DARWIN_PARAMS.h"
26     #include "QUOTA_SIZE.h"
27     #include "QUOTA.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,ii,jp,ko
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     WRITE(msgBuf,'(A)')
43     &'// ======================================================='
44     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
45     & SQUEEZE_RIGHT, myThid )
46     WRITE(msgBuf,'(A)') '// Quota loading parameters'
47     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
48     & SQUEEZE_RIGHT, myThid )
49     WRITE(msgBuf,'(A)')
50     &'// ======================================================='
51     CALL PRINT_MESSAGE( msgBuf, standardMessageUnit,
52     & SQUEEZE_RIGHT, myThid )
53    
54    
55     c c define 1 day in seconds
56     pday = 86400.0 _d 0
57     c par parameters
58     parfrac= 0.4 _d 0 !fraction Qsw that is PAR
59     parconv= 1. _d 0/0.2174 _d 0 !conversion from W/m2 to uEin/m2/s
60    
61     istar=90. _d 0 ! w/m2
62     c
63     c
64     c set temperature function
65     tempcoeff1 = 1. _d 0/3. _d 0
66     tempcoeff2_small = 0.001 _d 0
67     tempcoeff2_big = 0.0003 _d 0
68     tempcoeff3 = 1.04 _d 0
69     tempmax = 20. _d 0 ! 32. _d 0
70     temprange = 22. _d 0 ! 30. _d 0
71     tempnorm = 0.3 _d 0 ! 1. _d 0
72     tempdecay = 4. _d 0
73    
74     c set up diagnostics
75     #ifdef ALLOW_MNC
76     IF ( useMNC ) THEN
77     CALL DARWIN_MNC_INIT( myThid )
78     ENDIF
79     #endif /* ALLOW_MNC */
80    
81     COJ set up diagnostics
82     #ifdef ALLOW_DIAGNOSTICS
83     IF ( useDIAGNOSTICS ) THEN
84 jahn 1.3 CALL QUOTA_DIAGNOSTICS_INIT( myThid )
85 jahn 1.1 ENDIF
86     #endif /* ALLOW_DIAGNOSTICS */
87     COJ
88     c-----------------------------------------------------
89     c "Standard" parameters
90     ! maximum assimilation efficiency
91     ass_eff = 0.70 _d 0
92     ! organic matter sinking rate
93     orgsink(1) = 0.00 _d 0 /pday
94 benw 1.2 orgsink(2) = 10.0 _d 0 /pday
95 jahn 1.1 ! cost of biosynthesis
96     biosynth = 2.33 _d 0
97     ! nitrogen uptake
98     amminhib = 4.60 _d 0
99     ! nitrification
100     amm2nrite = 2.00 _d 0 /pday
101     nrite2nrate = 0.10 _d 0 /pday
102     PAR0 = 10.0 _d 0
103     ! iron
104     ! alpfe = 1.00 _d 0 ! 3D model
105     alpfe = 0.05 _d 0 ! 1D model
106 benw 1.2 ! scav = 1.10 _d -3 /pday
107     scav = 4.40 _d -3 /pday
108    
109 jahn 1.1 ligand_stab = 2.00 _d +5
110     ligand_tot = 1.00 _d -3
111     freefemax = 0.10 _d -3
112     #ifdef IRON_SED_SOURCE
113     c iron sediment source
114     depthfesed=1000.0 _d 0 !depth above which to add sediment source
115     fesedflux =1.0 _d 0 * 1.0 _d -3 / (86400.0 _d 0) !iron flux (mmol/m2/s)
116     fesedflux_pcm =0.68 _d 0 * 1.0 _d -3 !iron flux (mmol/m3/s) per
117     c mmol POC/m3/s
118     #endif
119     ! basic light
120     k_w = 0.04 _d 0
121     k_chl = 0.03 _d 0
122 benw 1.2 chl2nmax = 3.00 _d 0 ! Moore 2002 (labelled as GD98)
123     ! chl2nmax = 5.6 _d 0 ! Geider 1998
124 jahn 1.1 c-----------------------------------------------------
125     c ALLOMETRIC PARAMETERS
126     c parameter = aV^b
127     c if errors are relative (*/) then state as "log(error)"
128     c if errors are absolute (+-) then state as "error"
129     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
130     ! Initial slope of PI curve
131     a_alphachl = 3.83 _d -7 ! mmol C (mg chl a)^-1 (mu Ein m^-2)^-1
132     ae_alphachl = 1.00 _d 0
133     b_alphachl = 0.00 _d 0
134     be_alphachl = 0.00 _d 0
135     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
136     ! maximum specific grazing rate
137     a_graz = 21.9 _d 0 / pday ! d^-1
138     ae_graz = 1.00 _d 0
139     b_graz = -0.16 _d 0
140     be_graz = 0.02 _d 0
141     ! half saturation grazing prey carbon concentration
142     ! a_kg = 2.24 _d +1 ! mmol C m^-3
143 benw 1.2 a_kg = 1.00 _d 0 ! mmol C m^-3
144 jahn 1.1 ae_kg = 3.80 _d 0
145     b_kg = 0.00 _d 0
146     be_kg = 0.03 _d 0
147     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
148     ! sinking (enter as positive downwards)
149     a_biosink = 0.28 _d -1 / pday ! m d^-1
150     ae_biosink = 1.00 _d 0
151     b_biosink = 0.39 _d 0
152     be_biosink = 0.00 _d 0
153     ! swimming velocity (enter as positive upwards - converted in quota_generate_phyto.F)
154     a_bioswim = 0.00 _d 0 / pday ! m d^-1
155     ae_bioswim = 1.00 _d 0
156     b_bioswim = 0.18 _d 0
157     be_bioswim = 0.00 _d 0
158     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
159     ! mortality
160 benw 1.2 a_mort = 0.02 _d 0 / pday ! d^-1
161 jahn 1.1 ae_mort = 1.00 _d 0
162     b_mort = 0.00 _d 0
163     be_mort = 0.00 _d 0
164     ! predator prey preference distribution parameters
165     a_prdpry = 1024. _d 0 ! dimensionless
166     ae_prdpry = 1.00 _d 0
167     b_prdpry = 0.00 _d 0
168     be_prdpry = 0.00 _d 0
169     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
170     ! carbon
171     ! max photosynthetic rate (modified in quota_generate_plankton.F)
172     a_vmaxi(iDIC) = 1.00 _d 0 / pday ! d^-1
173     ae_vmaxi(iDIC) = 1.00 _d 0
174     b_vmaxi(iDIC) = -0.15 _d 0
175     be_vmaxi(iDIC) = 0.05 _d 0
176     ! cellular carbon content
177     a_qcarbon = 1.80 _d -11 ! mmol C cell^-1
178     ae_qcarbon = 1.36 _d 0
179     b_qcarbon = 0.94 _d 0
180     be_qcarbon = 0.04 _d 0
181     ! respiration (Note function of cellular C --> aC^b!)
182     ! a_respir = 3.21 _d -11 / pday ! mmol C cell^-1 d^-1
183     a_respir = 0.00 _d 0
184     ae_respir = 1.00 _d 0
185     b_respir = 0.93 _d 0
186     be_respir = 0.00 _d 0
187     ! carbon excretion
188     ! a_kexc(iCarb) = 0.32 _d -1 / pday ! d^-1
189     a_kexc(iCarb) = 0.00 _d 0
190     ae_kexc(iCarb) = 1.36 _d 0
191     b_kexc(iCarb) = -0.33 _d 0
192     be_kexc(iCarb) = 0.09 _d 0
193     ! fraction grazing to DOC
194 benw 1.2 a_beta_graz(iCarb) = 1.00 _d 0
195 jahn 1.1 ae_beta_graz(iCarb) = 1.00 _d 0
196 benw 1.2 b_beta_graz(iCarb) = -0.40 _d 0
197 jahn 1.1 be_beta_graz(iCarb) = 0.00 _d 0
198     ! fraction mortality to DOC
199 benw 1.2 a_beta_mort(iCarb) = 1.00 _d 0
200 jahn 1.1 ae_beta_mort(iCarb) = 1.00 _d 0
201 benw 1.2 b_beta_mort(iCarb) = -0.40 _d 0
202 jahn 1.1 be_beta_mort(iCarb) = 0.00 _d 0
203     ! carbon remineralisation rate
204 benw 1.2 remin(iCarb,1) = 0.02 _d 0 /pday
205     remin(iCarb,2) = 0.04 _d 0 /pday
206 jahn 1.1 ! nitrogen & nitrate
207     ! maximum NO3 uptake rate
208     a_vmaxi(iNO3) = 0.51 _d 0 / pday ! mmol N (mmol C)^-1 d^-1
209     ae_vmaxi(iNO3) = 1.00 _d 0
210     b_vmaxi(iNO3) = -0.27 _d 0
211     be_vmaxi(iNO3) = 0.00 _d 0
212     ! NO3 half-saturation
213     a_kn(iNO3) = 0.17 _d 0 ! (mmol N m^-3)
214     ae_kn(iNO3) = 1.36 _d 0
215     b_kn(iNO3) = 0.27 _d 0
216     be_kn(iNO3) = 0.07 _d 0
217     ! N minimum quota
218     a_qmin(iNitr) = 0.07 _d 0 ! mmol N (mmol C)^-1
219     ae_qmin(iNitr) = 1.00 _d 0
220     b_qmin(iNitr) = -0.17 _d 0
221     be_qmin(iNitr) = 0.00 _d 0
222     ! N maximum quota
223     a_qmax(iNitr) = 0.25 _d 0 ! mmol N (mmol C)^-1
224     ae_qmax(iNitr) = 1.00 _d 0
225     b_qmax(iNitr) = -0.13 _d 0
226     be_qmax(iNitr) = 0.00 _d 0
227     ! nitrogen excretion
228     a_kexc(iNitr) = 0.24 _d -1 / pday ! d^-1
229     a_kexc(iNitr) = 0.00 _d 0
230     ae_kexc(iNitr) = 1.36 _d 0
231     b_kexc(iNitr) = -0.33 _d 0
232     be_kexc(iNitr) = 0.09 _d 0
233     ! fraction grazing to DON
234 benw 1.2 a_beta_graz(iNitr) = 1.00 _d 0
235 jahn 1.1 ae_beta_graz(iNitr) = 1.00 _d 0
236 benw 1.2 b_beta_graz(iNitr) = -0.40 _d 0
237 jahn 1.1 be_beta_graz(iNitr) = 0.00 _d 0
238     ! fraction mortality to DON
239 benw 1.2 a_beta_mort(iNitr) = 1.00 _d 0
240 jahn 1.1 ae_beta_mort(iNitr) = 1.00 _d 0
241 benw 1.2 b_beta_mort(iNitr) = -0.40 _d 0
242 jahn 1.1 be_beta_mort(iNitr) = 0.00 _d 0
243     ! N remineralisation rate
244 benw 1.2 remin(iNitr,1) = 0.02 _d 0 /pday
245     remin(iNitr,2) = 0.04 _d 0 /pday
246 jahn 1.1 #ifdef NITRITE
247     ! nitrite
248     ! maximum NO2 uptake rate
249     a_vmaxi(iNO2) = 0.51 _d 0 / pday ! mmol N (mmol C)^-1 d^-1
250     ae_vmaxi(iNO2) = 1.36 _d 0
251     b_vmaxi(iNO2) = -0.27 _d 0
252     be_vmaxi(iNO2) = 0.07 _d 0
253     ! NO2 half-saturation
254     a_kn(iNO2) = 0.17 _d 0 ! (mmol N m^-3)
255     ae_kn(iNO2) = 1.36 _d 0
256     b_kn(iNO2) = 0.27 _d 0
257     be_kn(iNO2) = 0.08 _d 0
258     #endif
259     #ifdef AMMON
260     ! ammonium
261     ! maximum NH4 uptake rate
262     a_vmaxi(iNH4) = 0.26 _d 0 / pday ! mmol N (mmol C)^-1 d^-1
263     ae_vmaxi(iNH4) = 1.36 _d 0
264     b_vmaxi(iNH4) = -0.27 _d 0
265     be_vmaxi(iNH4) = 0.07 _d 0
266     ! NH4 half-saturation
267     a_kn(iNH4) = 0.85 _d -1 ! (mmol N m^-3)
268     ae_kn(iNH4) = 1.36 _d 0
269     b_kn(iNH4) = 0.27 _d 0
270     be_kn(iNH4) = 0.08 _d 0
271     #endif
272     #ifdef PQUOTA
273     ! phosphate
274     ! maximum PO4 uptake rate
275     a_vmaxi(iPO4) = 0.77 _d -1 / pday ! mmol P (mmol C)^-1 d^-1
276     ae_vmaxi(iPO4) = 1.36 _d 0
277     b_vmaxi(iPO4) = -0.27 _d 0
278     be_vmaxi(iPO4) = 0.07 _d 0
279     ! PO4 half-saturation
280     a_kn(iPO4) = 0.26 _d -1 ! (mmol N m^-3)
281     ae_kn(iPO4) = 1.36 _d 0
282     b_kn(iPO4) = 0.27 _d 0
283     be_kn(iPO4) = 0.08 _d 0
284     ! minimum P quota
285     a_qmin(iPhos) = 2.00 _d -3 ! mmol N (mmol C)^-1
286     ae_qmin(iPhos) = 1.00 _d 0
287     b_qmin(iPhos) = 0.00 _d 0
288     be_qmin(iPhos) = 0.00 _d 0
289     ! maximum P quota
290     a_qmax(iPhos) = 0.01 _d 0 ! mmol N (mmol C)^-1
291     ae_qmax(iPhos) = 1.20 _d 0
292     b_qmax(iPhos) = 0.00 _d 0
293     be_qmax(iPhos) = 0.00 _d 0
294     ! P excretion
295     a_kexc(iPhos) = 0.24 _d -1 / pday ! d^-1
296     ae_kexc(iPhos) = 1.36 _d 0
297     b_kexc(iPhos) = -0.33 _d 0
298     be_kexc(iPhos) = 0.09 _d 0
299     ! fraction grazing to DOP
300 benw 1.2 a_beta_graz(iPhos) = 1.00 _d 0
301 jahn 1.1 ae_beta_graz(iPhos) = 1.00 _d 0
302 benw 1.2 b_beta_graz(iPhos) = -0.40 _d 0
303 jahn 1.1 be_beta_graz(iPhos) = 0.00 _d 0
304     ! fraction mortality to DOP
305 benw 1.2 a_beta_mort(iPhos) = 1.00 _d 0
306 jahn 1.1 ae_beta_mort(iPhos) = 1.00 _d 0
307 benw 1.2 b_beta_mort(iPhos) = -0.40 _d 0
308 jahn 1.1 be_beta_mort(iPhos) = 0.00 _d 0
309     ! P remineralisation rate
310 benw 1.2 remin(iPhos,1) = 0.02 _d 0 /pday
311     remin(iPhos,2) = 0.04 _d 0 /pday
312 jahn 1.1 #endif
313     #ifdef SQUOTA
314     ! silicate
315     ! maximum Si uptake rate
316     a_vmaxi(iSi) = 0.77 _d -1 / pday ! mmol Fe (mmol C)^-1 d^-1
317     ae_vmaxi(iSi) = 1.36 _d 0
318     b_vmaxi(iSi) = -0.27 _d 0
319     be_vmaxi(iSi) = 0.07 _d 0
320     ! Si half-saturation
321     a_kn(iSi) = 0.24 _d -1 ! (mmol N m^-3)
322     ae_kn(iSi) = 1.36 _d 0
323     b_kn(iSi) = 0.27 _d 0
324     be_kn(iSi) = 0.08 _d 0
325     ! minimum Si quota
326     ! a_qmin(iSili) = 0.84 _d -1 ! mmol N (mmol C)^-1
327     ! ae_qmin(iSili) = 1.00 _d 0
328     ! b_qmin(iSili) = -0.17 _d 0
329     ! be_qmin(iSili) = 0.00 _d 0
330     a_qmin(iSili) = 2.00 _d -3 ! mmol N (mmol C)^-1
331     ae_qmin(iSili) = 1.00 _d 0
332     b_qmin(iSili) = 0.00 _d 0
333     be_qmin(iSili) = 0.00 _d 0
334     ! maximum Si quota
335     ! a_qmax(iSili) = 0.30 _d 0 ! mmol N (mmol C)^-1
336     ! ae_qmax(iSili) = 1.00 _d 0
337     ! b_qmax(iSili) = -0.13 _d 0
338     ! be_qmax(iSili) = 0.00 _d 0
339     a_qmax(iSili) = 4.00 _d -3 ! mmol N (mmol C)^-1
340     ae_qmax(iSili) = 1.20 _d 0
341     b_qmax(iSili) = 0.00 _d 0
342     be_qmax(iSili) = 0.00 _d 0
343     ! Si excretion
344     a_kexc(iSili) = 0.00 _d 0 / pday ! d^-1
345     ae_kexc(iSili) = 1.00 _d 0
346     b_kexc(iSili) = 0.00 _d 0
347     be_kexc(iSili) = 0.00 _d 0
348     ! fraction grazing to DOSi
349     a_beta_graz(iSili) = 0.00 _d 0
350     ae_beta_graz(iSili) = 1.00 _d 0
351     b_beta_graz(iSili) = 0.00 _d 0
352     be_beta_graz(iSili) = 0.00 _d 0
353     ! fraction mortality to DOSi
354     a_beta_mort(iSili) = 0.00 _d 0
355     ae_beta_mort(iSili) = 1.00 _d 0
356     b_beta_mort(iSili) = 0.00 _d 0
357     be_beta_mort(iSili) = 0.00 _d 0
358     ! POSi remineralisation rate
359     remin(iSili,1) = 0.00 _d 0 /pday
360     remin(iSili,2) = 0.33 _d -2 /pday
361     #endif
362     #ifdef FQUOTA
363     ! iron
364     ! maximum Fe uptake rate
365     ! a_vmaxi(iFeT) = 96.2 _d -6 / pday ! mmol Fe (mmol C)^-1 d^-1
366     a_vmaxi(iFeT) = 14.0 _d -6 / pday
367     ae_vmaxi(iFeT) = 1.36 _d 0
368     b_vmaxi(iFeT) = -0.27 _d 0
369     be_vmaxi(iFeT) = 0.07 _d 0
370     ! Fe half-saturation
371     ! a_kn(ifeT) = 32.1 _d -6 ! (mmol N m^-3)
372     a_kn(ifeT) = 80.0 _d -6
373     ae_kn(iFeT) = 1.36 _d 0
374     b_kn(iFeT) = 0.27 _d 0
375     be_kn(iFeT) = 0.08 _d 0
376     ! minimum Fe quota
377     a_qmin(iIron) = 1.50 _d -6 ! mmol N (mmol C)^-1 - Mongin (2006)
378     ! a_qmin(iIron) = 5.00 _d -6 ! mmol N (mmol C)^-1
379     ae_qmin(iIron) = 1.00 _d 0
380     b_qmin(iIron) = 0.00 _d 0
381     be_qmin(iIron) = 0.00 _d 0
382     ! maximum Fe quota
383     a_qmax(iIron) = 80.0 _d -6 ! mmol N (mmol C)^-1 - Mongin (2006)
384     ! a_qmax(iIron) = 15.0 _d -6 ! mmol N (mmol C)^-1
385     ae_qmax(iIron) = 1.20 _d 0
386     b_qmax(iIron) = 0.00 _d 0
387     be_qmax(iIron) = 0.00 _d 0
388     ! Fe excretion
389     a_kexc(iIron) = 0.00 _d 0 / pday ! d^-1
390     ae_kexc(iIron) = 1.00 _d 0
391     b_kexc(iIron) = 0.00 _d 0
392     be_kexc(iIron) = 0.00 _d 0
393     ! fraction grazing to DOFe
394 benw 1.2 a_beta_graz(iIron) = 1.00 _d 0
395 jahn 1.1 ae_beta_graz(iIron) = 1.00 _d 0
396 benw 1.2 b_beta_graz(iIron) = -0.40 _d 0
397 jahn 1.1 be_beta_graz(iIron) = 0.00 _d 0
398     ! fraction mortality to DOFe
399 benw 1.2 a_beta_mort(iIron) = 1.00 _d 0
400 jahn 1.1 ae_beta_mort(iIron) = 1.00 _d 0
401 benw 1.2 b_beta_mort(iIron) = -0.40 _d 0
402 jahn 1.1 be_beta_mort(iIron) = 0.00 _d 0
403     ! Fe remineralisation rate
404 benw 1.2 remin(iIron,1) = 0.02 _d 0 /pday
405     remin(iIron,2) = 0.04 _d 0 /pday
406 jahn 1.1 #endif
407     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
408     c end allometric scaling
409     cccccccccccccccccccccccccccccccccccccccccccccccccccccc
410    
411     RETURN
412     END
413     C============================================================================
414     #endif /*ALLOW_QUOTA*/
415     #endif /*ALLOW_DARWIN*/
416     #endif /*ALLOW_PTRACERS*/

  ViewVC Help
Powered by ViewVC 1.1.22