/[MITgcm]/MITgcm_contrib/darwin2/pkg/darwin/darwin_mnc_init.F
ViewVC logotype

Annotation of /MITgcm_contrib/darwin2/pkg/darwin/darwin_mnc_init.F

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


Revision 1.4 - (hide annotations) (download)
Thu Aug 23 21:47:27 2012 UTC (12 years, 10 months ago) by jahn
Branch: MAIN
Changes since 1.3: +39 -26 lines
add some diagnostics descriptions

1 jahn 1.4 C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/darwin/darwin_mnc_init.F,v 1.3 2012/07/30 15:21:51 jahn Exp $
2 benw 1.2 C $Name: $
3 jahn 1.1
4     #include "DARWIN_OPTIONS.h"
5    
6     C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
7     CBOP
8     C !ROUTINE: DARWIN_MNC_INIT
9    
10     C !INTERFACE:
11     SUBROUTINE DARWIN_MNC_INIT( myThid )
12    
13     C !DESCRIPTION:
14     C Initialize MNC for DARWIN
15    
16     C !USES:
17     IMPLICIT NONE
18     #include "SIZE.h"
19     #include "EEPARAMS.h"
20     #include "PARAMS.h"
21     #include "PTRACERS_SIZE.h"
22     #include "PTRACERS_PARAMS.h"
23     #include "DARWIN_SIZE.h"
24     #include "SPECTRAL_SIZE.h"
25    
26     C !INPUT PARAMETERS:
27     C myThid :: thread number
28     INTEGER myThid
29     CEOP
30     INTEGER np
31     INTEGER ii,jj,ilnb
32     CHARACTER*(MAX_LEN_MBUF) suff
33     CHARACTER*(1) pf
34     CHARACTER*(MAX_LEN_FNAM) name
35     #ifdef ALLOW_QUOTA
36     INTEGER iPhy
37     #endif
38     C Functions
39     integer ILNBLNK
40    
41     #ifdef ALLOW_DARWIN
42     #ifdef ALLOW_MNC
43    
44     IF ( useMNC ) THEN
45    
46     #ifdef ALLOW_QUOTA
47     iPhy=ibiomass
48     #endif
49    
50     CALL MNC_CW_ADD_VNAME(
51     & 'dar_PAR_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
52     CALL MNC_CW_ADD_VATTR_TEXT(
53     & 'dar_PAR_ave','units','--', myThid)
54     CALL MNC_CW_ADD_VATTR_TEXT('dar_PAR_ave','description',
55     & '', myThid)
56    
57     CALL MNC_CW_ADD_VNAME(
58     & 'dar_PP_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
59     CALL MNC_CW_ADD_VATTR_TEXT(
60     & 'dar_PP_ave','units','--', myThid)
61     CALL MNC_CW_ADD_VATTR_TEXT('dar_PP_ave','description',
62     & '', myThid)
63 benw 1.2 cbenw limitation diagnostics
64     #ifdef QUOTA_DIAG_LIMIT
65     do np=1,npmax
66     c nitrogen
67     DO jj = 1,MAX_LEN_FNAM
68     name(jj:jj) = ' '
69     ENDDO
70     WRITE(name,'(a,i3.3)') 'dar_Nlim_',np
71     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
72     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
73     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
74     c iron
75     DO jj = 1,MAX_LEN_FNAM
76     name(jj:jj) = ' '
77     ENDDO
78     WRITE(name,'(a,i3.3)') 'dar_Flim_',np
79     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
80     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
81     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
82     c light
83     DO jj = 1,MAX_LEN_FNAM
84     name(jj:jj) = ' '
85     ENDDO
86     WRITE(name,'(a,i3.3)') 'dar_Ilim_',np
87     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
88     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
89     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
90     enddo
91     c temperature
92     DO jj = 1,MAX_LEN_FNAM
93     name(jj:jj) = ' '
94     ENDDO
95     WRITE(name,'(a)') 'dar_Tlim_ave'
96     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
97     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
98     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
99     #endif
100     cbenw limitation diagnostics
101 jahn 1.1 #ifndef ALLOW_QUOTA
102     CALL MNC_CW_ADD_VNAME(
103     & 'dar_Chl_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
104     CALL MNC_CW_ADD_VATTR_TEXT(
105     & 'dar_Chl_ave','units','--', myThid)
106     CALL MNC_CW_ADD_VATTR_TEXT('dar_Chl_ave','description',
107     & '', myThid)
108     #endif
109     CALL MNC_CW_ADD_VNAME(
110     & 'dar_Nfix_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
111     CALL MNC_CW_ADD_VATTR_TEXT(
112     & 'dar_Nfix_ave','units','--', myThid)
113     CALL MNC_CW_ADD_VATTR_TEXT('dar_Nfix_ave','description',
114     & '', myThid)
115    
116     CALL MNC_CW_ADD_VNAME(
117     & 'dar_Denit_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
118     CALL MNC_CW_ADD_VATTR_TEXT(
119     & 'dar_Denit_ave','units','--', myThid)
120     CALL MNC_CW_ADD_VATTR_TEXT('dar_Denit_ave','description',
121     & '', myThid)
122    
123     #ifdef DAR_DIAG_ACDOM
124     CALL MNC_CW_ADD_VNAME(
125     & 'dar_aCDOM_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
126     CALL MNC_CW_ADD_VATTR_TEXT(
127     & 'dar_aCDOM_ave','units','--', myThid)
128     CALL MNC_CW_ADD_VATTR_TEXT('dar_aCDOM_ave','description',
129     & '', myThid)
130     #endif
131    
132     #ifdef DAR_DIAG_IRR
133     do ii=1,tlam
134     DO jj = 1,MAX_LEN_FNAM
135     name(jj:jj) = ' '
136     ENDDO
137     WRITE(name,'(a,i2.2)') 'dar_Ed',ii
138     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
139 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
140     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
141     & 'direct downwelling irradiance at top of layer', myThid)
142 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_Es',ii
143     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
144 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
145     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
146     & 'diffuse downwelling irradiance at top of layer', myThid)
147 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_Eu',ii
148     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
149 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
150     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
151     & 'upwelling irradiance just above top of layer', myThid)
152 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_Eutop',ii
153     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
154 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
155     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
156     & 'upwelling irradiance just below top of layer', myThid)
157 jahn 1.1 enddo
158     #endif
159    
160 jahn 1.3 #ifdef DAR_DIAG_IRR_AMPS
161     do ii=1,tlam
162     DO jj = 1,MAX_LEN_FNAM
163     name(jj:jj) = ' '
164     ENDDO
165     WRITE(name,'(a,i2.2)') 'dar_c1_',ii
166     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
167 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
168     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
169     & 'amplitude of downward increasing mode', myThid)
170 jahn 1.3 WRITE(name,'(a,i2.2)') 'dar_c2_',ii
171     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
172 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
173     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
174     & 'amplitude of downward decreasing mode', myThid)
175 jahn 1.3 enddo
176     #endif
177 jahn 1.1 #ifdef DAR_DIAG_ABSORP
178     do ii=1,tlam
179     DO jj = 1,MAX_LEN_FNAM
180     name(jj:jj) = ' '
181     ENDDO
182     WRITE(name,'(a,i2.2)') 'dar_a',ii
183     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
184 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
185     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
186     & 'total absorption coefficient', myThid)
187 jahn 1.1 enddo
188     #endif
189     #ifdef DAR_DIAG_SCATTER
190     do ii=1,tlam
191     DO jj = 1,MAX_LEN_FNAM
192     name(jj:jj) = ' '
193     ENDDO
194     WRITE(name,'(a,i2.2)') 'dar_bt',ii
195     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
196 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
197     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
198     & 'total scattering coefficient', myThid)
199 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_bb',ii
200     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
201 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
202     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
203     & 'total backscattering coefficient', myThid)
204 jahn 1.1 enddo
205     #endif
206     #ifdef DAR_DIAG_PART_SCATTER
207     do ii=1,tlam
208     DO jj = 1,MAX_LEN_FNAM
209     name(jj:jj) = ' '
210     ENDDO
211     WRITE(name,'(a,i2.2)') 'dar_apart',ii
212     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
213 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
214     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
215     & 'absorption coefficient due to particles', myThid)
216 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_btpart',ii
217     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
218 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
219     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
220     & 'scattering coefficient due to particles', myThid)
221 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_bbpart',ii
222     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
223 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
224     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
225     & 'backscattering coefficient due to particles', myThid)
226 jahn 1.1 enddo
227     #endif
228 jahn 1.3 #ifdef DAR_RADTRANS
229     DO jj = 1,MAX_LEN_FNAM
230     name(jj:jj) = ' '
231     ENDDO
232     WRITE(name,'(a)') 'dar_rmud'
233     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__-__t',3,4,myThid)
234     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
235 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
236     & 'inverse cosine of under-water solar zenith angle', myThid)
237 jahn 1.3 #endif
238 jahn 1.1
239     c ANNA_TAVE
240     #ifdef WAVES_DIAG_PCHL
241     do np=1,npmax
242     ii=iPhy+np-1
243     DO jj = 1,MAX_LEN_FNAM
244     name(jj:jj) = ' '
245     ENDDO
246     ilnb = ILNBLNK(PTRACERS_names(ii))
247     WRITE(name,'(a,a)') 'dar_Pchl_',PTRACERS_names(ii)(1:ilnb)
248     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
249     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
250     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
251     enddo
252     #endif
253     c ANNA end TAVE
254     #ifdef DAR_DIAG_RSTAR
255     do np=1,npmax
256     ii=iPhy+np-1
257     DO jj = 1,MAX_LEN_FNAM
258     name(jj:jj) = ' '
259     ENDDO
260     ilnb = ILNBLNK(PTRACERS_names(ii))
261     WRITE(name,'(a,a)') 'dar_Rstar_',PTRACERS_names(ii)(1:ilnb)
262     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
263     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
264     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
265     enddo
266     do np=1,npmax
267     ii=iPhy+np-1
268     DO jj = 1,MAX_LEN_FNAM
269     name(jj:jj) = ' '
270     ENDDO
271     ilnb = ILNBLNK(PTRACERS_names(ii))
272     WRITE(name,'(a,a)') 'dar_RNstar_',PTRACERS_names(ii)(1:ilnb)
273     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
274     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
275     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
276     enddo
277     #endif
278    
279     #ifdef DAR_DIAG_DIVER
280     CALL MNC_CW_ADD_VNAME(
281     & 'dar_Diver1_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
282     CALL MNC_CW_ADD_VATTR_TEXT(
283     & 'dar_Diver1_ave','units','--', myThid)
284     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver1_ave','description',
285     & '', myThid)
286    
287     CALL MNC_CW_ADD_VNAME(
288     & 'dar_Diver2_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
289     CALL MNC_CW_ADD_VATTR_TEXT(
290     & 'dar_Diver2_ave','units','--', myThid)
291     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver2_ave','description',
292     & '', myThid)
293    
294     CALL MNC_CW_ADD_VNAME(
295     & 'dar_Diver3_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
296     CALL MNC_CW_ADD_VATTR_TEXT(
297     & 'dar_Diver3_ave','units','--', myThid)
298     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver3_ave','description',
299     & '', myThid)
300    
301     CALL MNC_CW_ADD_VNAME(
302     & 'dar_Diver4_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
303     CALL MNC_CW_ADD_VATTR_TEXT(
304     & 'dar_Diver4_ave','units','--', myThid)
305     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver4_ave','description',
306     & '', myThid)
307    
308     #endif
309     #ifdef DAR_DIAG_GROW
310     do np=1,npmax
311     ii=iPhy+np-1
312     DO jj = 1,MAX_LEN_FNAM
313     name(jj:jj) = ' '
314     ENDDO
315     ilnb = ILNBLNK(PTRACERS_names(ii))
316     WRITE(name,'(a,a)') 'dar_Grow_',PTRACERS_names(ii)(1:ilnb)
317     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
318     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
319     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
320     enddo
321     do np=1,npmax
322     ii=iPhy+np-1
323     DO jj = 1,MAX_LEN_FNAM
324     name(jj:jj) = ' '
325     ENDDO
326     ilnb = ILNBLNK(PTRACERS_names(ii))
327     WRITE(name,'(a,a)') 'dar_Growsq_',PTRACERS_names(ii)(1:ilnb)
328     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
329     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
330     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
331     enddo
332     #endif
333    
334     #ifdef ALLOW_DIAZ
335     #ifdef DAR_DIAG_NFIXP
336     do np=1,npmax
337     ii=iPhy+np-1
338     DO jj = 1,MAX_LEN_FNAM
339     name(jj:jj) = ' '
340     ENDDO
341     ilnb = ILNBLNK(PTRACERS_names(ii))
342     WRITE(name,'(a,a)') 'dar_NfixP_',PTRACERS_names(ii)(1:ilnb)
343     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
344     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
345     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
346     enddo
347     #endif
348     #endif
349    
350    
351    
352     c CALL MNC_CW_ADD_VNAME(
353     c & 'dic_pH_ave', 'Cen_xy_Hn__-__t', 3,4, myThid)
354     c CALL MNC_CW_ADD_VATTR_TEXT(
355     c & 'dic_pH_ave','units','--', myThid)
356     c CALL MNC_CW_ADD_VATTR_TEXT('dic_pH_ave','description',
357     c & '', myThid)
358    
359     ENDIF
360    
361     #endif /* ALLOW_MNC */
362     #endif /* ALLOW_DARWIN */
363    
364     RETURN
365     END

  ViewVC Help
Powered by ViewVC 1.1.22