/[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.5 - (hide annotations) (download)
Thu Aug 23 21:48:24 2012 UTC (12 years, 10 months ago) by jahn
Branch: MAIN
CVS Tags: ctrb_darwin2_ckpt63s_20120908, ctrb_darwin2_ckpt64_20121012
Changes since 1.4: +9 -3 lines
add Edstop timeave diagnostic, rename c1/2 to amp1/2

1 jahn 1.5 C $Header: /u/gcmpack/MITgcm_contrib/darwin2/pkg/darwin/darwin_mnc_init.F,v 1.4 2012/08/23 21:47:27 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.5 WRITE(name,'(a,i2.2)') 'dar_Estop',ii
153     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
154     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
155     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
156     & 'diffuse downwelling irradiance just below top of layer',
157     & myThid)
158 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_Eutop',ii
159     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
160 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
161     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
162     & 'upwelling irradiance just below top of layer', myThid)
163 jahn 1.1 enddo
164     #endif
165    
166 jahn 1.3 #ifdef DAR_DIAG_IRR_AMPS
167     do ii=1,tlam
168     DO jj = 1,MAX_LEN_FNAM
169     name(jj:jj) = ' '
170     ENDDO
171 jahn 1.5 WRITE(name,'(a,i2.2)') 'dar_amp1_',ii
172 jahn 1.3 CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
173 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
174     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
175     & 'amplitude of downward increasing mode', myThid)
176 jahn 1.5 WRITE(name,'(a,i2.2)') 'dar_amp2_',ii
177 jahn 1.3 CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
178 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','W/m^2', myThid)
179     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
180     & 'amplitude of downward decreasing mode', myThid)
181 jahn 1.3 enddo
182     #endif
183 jahn 1.1 #ifdef DAR_DIAG_ABSORP
184     do ii=1,tlam
185     DO jj = 1,MAX_LEN_FNAM
186     name(jj:jj) = ' '
187     ENDDO
188     WRITE(name,'(a,i2.2)') 'dar_a',ii
189     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
190 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
191     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
192     & 'total absorption coefficient', myThid)
193 jahn 1.1 enddo
194     #endif
195     #ifdef DAR_DIAG_SCATTER
196     do ii=1,tlam
197     DO jj = 1,MAX_LEN_FNAM
198     name(jj:jj) = ' '
199     ENDDO
200     WRITE(name,'(a,i2.2)') 'dar_bt',ii
201     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
202 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
203     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
204     & 'total scattering coefficient', myThid)
205 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_bb',ii
206     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
207 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
208     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
209     & 'total backscattering coefficient', myThid)
210 jahn 1.1 enddo
211     #endif
212     #ifdef DAR_DIAG_PART_SCATTER
213     do ii=1,tlam
214     DO jj = 1,MAX_LEN_FNAM
215     name(jj:jj) = ' '
216     ENDDO
217     WRITE(name,'(a,i2.2)') 'dar_apart',ii
218     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
219 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
220     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
221     & 'absorption coefficient due to particles', myThid)
222 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_btpart',ii
223     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
224 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
225     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
226     & 'scattering coefficient due to particles', myThid)
227 jahn 1.1 WRITE(name,'(a,i2.2)') 'dar_bbpart',ii
228     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
229 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'units','1/m', myThid)
230     CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
231     & 'backscattering coefficient due to particles', myThid)
232 jahn 1.1 enddo
233     #endif
234 jahn 1.3 #ifdef DAR_RADTRANS
235     DO jj = 1,MAX_LEN_FNAM
236     name(jj:jj) = ' '
237     ENDDO
238     WRITE(name,'(a)') 'dar_rmud'
239     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__-__t',3,4,myThid)
240     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
241 jahn 1.4 CALL MNC_CW_ADD_VATTR_TEXT(name,'description',
242     & 'inverse cosine of under-water solar zenith angle', myThid)
243 jahn 1.3 #endif
244 jahn 1.1
245     c ANNA_TAVE
246     #ifdef WAVES_DIAG_PCHL
247     do np=1,npmax
248     ii=iPhy+np-1
249     DO jj = 1,MAX_LEN_FNAM
250     name(jj:jj) = ' '
251     ENDDO
252     ilnb = ILNBLNK(PTRACERS_names(ii))
253     WRITE(name,'(a,a)') 'dar_Pchl_',PTRACERS_names(ii)(1:ilnb)
254     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
255     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
256     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
257     enddo
258     #endif
259     c ANNA end TAVE
260     #ifdef DAR_DIAG_RSTAR
261     do np=1,npmax
262     ii=iPhy+np-1
263     DO jj = 1,MAX_LEN_FNAM
264     name(jj:jj) = ' '
265     ENDDO
266     ilnb = ILNBLNK(PTRACERS_names(ii))
267     WRITE(name,'(a,a)') 'dar_Rstar_',PTRACERS_names(ii)(1:ilnb)
268     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
269     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
270     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
271     enddo
272     do np=1,npmax
273     ii=iPhy+np-1
274     DO jj = 1,MAX_LEN_FNAM
275     name(jj:jj) = ' '
276     ENDDO
277     ilnb = ILNBLNK(PTRACERS_names(ii))
278     WRITE(name,'(a,a)') 'dar_RNstar_',PTRACERS_names(ii)(1:ilnb)
279     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
280     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
281     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
282     enddo
283     #endif
284    
285     #ifdef DAR_DIAG_DIVER
286     CALL MNC_CW_ADD_VNAME(
287     & 'dar_Diver1_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
288     CALL MNC_CW_ADD_VATTR_TEXT(
289     & 'dar_Diver1_ave','units','--', myThid)
290     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver1_ave','description',
291     & '', myThid)
292    
293     CALL MNC_CW_ADD_VNAME(
294     & 'dar_Diver2_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
295     CALL MNC_CW_ADD_VATTR_TEXT(
296     & 'dar_Diver2_ave','units','--', myThid)
297     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver2_ave','description',
298     & '', myThid)
299    
300     CALL MNC_CW_ADD_VNAME(
301     & 'dar_Diver3_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
302     CALL MNC_CW_ADD_VATTR_TEXT(
303     & 'dar_Diver3_ave','units','--', myThid)
304     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver3_ave','description',
305     & '', myThid)
306    
307     CALL MNC_CW_ADD_VNAME(
308     & 'dar_Diver4_ave', 'Cen_xy_Hn__C__t', 4,5, myThid)
309     CALL MNC_CW_ADD_VATTR_TEXT(
310     & 'dar_Diver4_ave','units','--', myThid)
311     CALL MNC_CW_ADD_VATTR_TEXT('dar_Diver4_ave','description',
312     & '', myThid)
313    
314     #endif
315     #ifdef DAR_DIAG_GROW
316     do np=1,npmax
317     ii=iPhy+np-1
318     DO jj = 1,MAX_LEN_FNAM
319     name(jj:jj) = ' '
320     ENDDO
321     ilnb = ILNBLNK(PTRACERS_names(ii))
322     WRITE(name,'(a,a)') 'dar_Grow_',PTRACERS_names(ii)(1:ilnb)
323     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
324     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
325     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
326     enddo
327     do np=1,npmax
328     ii=iPhy+np-1
329     DO jj = 1,MAX_LEN_FNAM
330     name(jj:jj) = ' '
331     ENDDO
332     ilnb = ILNBLNK(PTRACERS_names(ii))
333     WRITE(name,'(a,a)') 'dar_Growsq_',PTRACERS_names(ii)(1:ilnb)
334     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
335     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
336     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
337     enddo
338     #endif
339    
340     #ifdef ALLOW_DIAZ
341     #ifdef DAR_DIAG_NFIXP
342     do np=1,npmax
343     ii=iPhy+np-1
344     DO jj = 1,MAX_LEN_FNAM
345     name(jj:jj) = ' '
346     ENDDO
347     ilnb = ILNBLNK(PTRACERS_names(ii))
348     WRITE(name,'(a,a)') 'dar_NfixP_',PTRACERS_names(ii)(1:ilnb)
349     CALL MNC_CW_ADD_VNAME(name,'Cen_xy_Hn__C__t',4,5,myThid)
350     CALL MNC_CW_ADD_VATTR_TEXT(name,'units','--', myThid)
351     CALL MNC_CW_ADD_VATTR_TEXT(name,'description','', myThid)
352     enddo
353     #endif
354     #endif
355    
356    
357    
358     c CALL MNC_CW_ADD_VNAME(
359     c & 'dic_pH_ave', 'Cen_xy_Hn__-__t', 3,4, myThid)
360     c CALL MNC_CW_ADD_VATTR_TEXT(
361     c & 'dic_pH_ave','units','--', myThid)
362     c CALL MNC_CW_ADD_VATTR_TEXT('dic_pH_ave','description',
363     c & '', myThid)
364    
365     ENDIF
366    
367     #endif /* ALLOW_MNC */
368     #endif /* ALLOW_DARWIN */
369    
370     RETURN
371     END

  ViewVC Help
Powered by ViewVC 1.1.22