/[MITgcm]/MITgcm_contrib/darwin2/pkg/monod/monod_check.F
ViewVC logotype

Annotation of /MITgcm_contrib/darwin2/pkg/monod/monod_check.F

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


Revision 1.1 - (hide annotations) (download)
Wed Apr 13 18:56:25 2011 UTC (14 years, 3 months ago) by jahn
Branch: MAIN
CVS Tags: ctrb_darwin2_ckpt64k_20130723, ctrb_darwin2_ckpt63l_20120405, ctrb_darwin2_ckpt64h_20130528, ctrb_darwin2_ckpt62v_20110413, ctrb_darwin2_ckpt64m_20130820, ctrb_darwin2_ckpt64f_20130405, ctrb_darwin2_ckpt63f_20111201, ctrb_darwin2_ckpt64a_20121116, ctrb_darwin2_ckpt64n_20130826, ctrb_darwin2_ckpt64o_20131024, ctrb_darwin2_ckpt62y_20110526, ctrb_darwin2_ckpt64i_20130622, ctrb_darwin2_ckpt62x_20110513, ctrb_darwin2_ckpt62w_20110426, ctrb_darwin2_ckpt63o_20120629, ctrb_darwin2_ckpt64e_20130305, ctrb_darwin2_ckpt63c_20111011, ctrb_darwin2_ckpt63i_20120124, ctrb_darwin2_ckpt63m_20120506, ctrb_darwin2_ckpt63s_20120908, ctrb_darwin2_ckpt63e_20111107, ctrb_darwin2_ckpt63b_20110830, ctrb_darwin2_ckpt63j_20120217, ctrb_darwin2_ckpt63r_20120817, ctrb_darwin2_ckpt64g_20130503, ctrb_darwin2_ckpt64l_20130806, ctrb_darwin2_ckpt63g_20111220, ctrb_darwin2_ckpt64c_20130120, ctrb_darwin2_ckpt63a_20110804, ctrb_darwin2_ckpt64j_20130704, ctrb_darwin2_ckpt63h_20111230, ctrb_darwin2_ckpt63p_20120707, ctrb_darwin2_ckpt64p_20131118, ctrb_darwin2_ckpt63d_20111107, ctrb_darwin2_ckpt63q_20120731, ctrb_darwin2_ckpt63_20110728, ctrb_darwin2_ckpt64b_20121224, ctrb_darwin2_ckpt64d_20130219, ctrb_darwin2_ckpt64_20121012, ctrb_darwin2_ckpt64q_20131118, ctrb_darwin2_baseline, ctrb_darwin2_ckpt64p_20131024, ctrb_darwin2_ckpt63n_20120604, ctrb_darwin2_ckpt63k_20120317, ctrb_darwin2_ckpt62z_20110622
darwin2 initial checkin

1 jahn 1.1 C $Header$
2     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_MONOD
10    
11     SUBROUTINE MONOD_CHECK( myThid )
12     C /==========================================================\
13     C | SUBROUTINE MONOD_CHECK |
14     C | o Check dependences with other packages: |
15     C | Print darwin indices (iPO4,...) and ptracer names |
16     C | to allow for manual check |
17     C \==========================================================/
18     IMPLICIT NONE
19    
20     C === Global variables ===
21     #include "SIZE.h"
22     #include "EEPARAMS.h"
23     #include "PARAMS.h"
24     #include "PTRACERS_SIZE.h"
25     #include "PTRACERS_PARAMS.h"
26     #include "GCHEM.h"
27     #include "MONOD_SIZE.h"
28    
29     C === Routine arguments ===
30     C myThid - Number of this instances
31     INTEGER myThid
32    
33     C === Local variables ===
34     C msgBuf - Informational/error meesage buffer
35     CHARACTER*(MAX_LEN_MBUF) msgBuf
36     INTEGER i,j,bi,bj,nz,iPtr
37    
38     WRITE(msgBuf,'(A)') 'MONOD_CHECK: #define ALLOW_MONOD'
39     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
40     & SQUEEZE_RIGHT,myThid)
41    
42     if ( nDarwin .GT. PTRACERS_num ) THEN
43     WRITE(msgBuf,'(A,I5,A,I5)')
44     & 'MONOD_CHECK: ERROR: nDarwin > PTRACERS_num: ',
45     & nDarwin,' vs ',PTRACERS_num
46     CALL PRINT_ERROR( msgBuf , 1)
47     STOP 'ABNORMAL END: S/R MONOD_CHECK'
48     ENDIF
49    
50     WRITE(msgBuf,'(A)') 'MONOD_CHECK: iPtr darwin PTRACERS_names'
51     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
52     & SQUEEZE_RIGHT,myThid)
53     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
54     & iPO4 ,'PO4 ', PTRACERS_names(iPO4 )
55     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
56     & SQUEEZE_RIGHT,myThid)
57     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
58     & iNO3 ,'NO3 ', PTRACERS_names(iNO3 )
59     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
60     & SQUEEZE_RIGHT,myThid)
61     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
62     & iFeT ,'FeT ', PTRACERS_names(iFeT )
63     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
64     & SQUEEZE_RIGHT,myThid)
65     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
66     & iSi ,'Si ', PTRACERS_names(iSi )
67     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
68     & SQUEEZE_RIGHT,myThid)
69     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
70     & iDOP ,'DOP ', PTRACERS_names(iDOP )
71     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
72     & SQUEEZE_RIGHT,myThid)
73     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
74     & iDON ,'DON ', PTRACERS_names(iDON )
75     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
76     & SQUEEZE_RIGHT,myThid)
77     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
78     & iDOFe ,'DOFe ', PTRACERS_names(iDOFe )
79     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
80     & SQUEEZE_RIGHT,myThid)
81    
82     DO nz = 1,nzmax
83     iPtr = iZooP (nz)
84     WRITE(msgBuf,'(A,I4,X,A,I1,A,A32)') 'MONOD_CHECK: ',
85     & iPtr, 'ZooP (',nz,') ', PTRACERS_names(iPtr)
86     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
87     & SQUEEZE_RIGHT,myThid)
88     iPtr = iZooN (nz)
89     WRITE(msgBuf,'(A,I4,X,A,I1,A,A32)') 'MONOD_CHECK: ',
90     & iPtr, 'ZooN (',nz,') ', PTRACERS_names(iPtr)
91     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
92     & SQUEEZE_RIGHT,myThid)
93     iPtr = iZooFe(nz)
94     WRITE(msgBuf,'(A,I4,X,A,I1,A,A32)') 'MONOD_CHECK: ',
95     & iPtr, 'ZooFe(',nz,') ', PTRACERS_names(iPtr)
96     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
97     & SQUEEZE_RIGHT,myThid)
98     iPtr = iZooSi(nz)
99     WRITE(msgBuf,'(A,I4,X,A,I1,A,A32)') 'MONOD_CHECK: ',
100     & iPtr, 'ZooSi(',nz,') ', PTRACERS_names(iPtr)
101     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
102     & SQUEEZE_RIGHT,myThid)
103     ENDDO
104    
105     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
106     & iPOP ,'POP ', PTRACERS_names(iPOP )
107     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
108     & SQUEEZE_RIGHT,myThid)
109     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
110     & iPON ,'PON ', PTRACERS_names(iPON )
111     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
112     & SQUEEZE_RIGHT,myThid)
113     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
114     & iPOFe ,'POFe ', PTRACERS_names(iPOFe )
115     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
116     & SQUEEZE_RIGHT,myThid)
117     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
118     & iPOSi ,'POSi ', PTRACERS_names(iPOSi )
119     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
120     & SQUEEZE_RIGHT,myThid)
121     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
122     & iNH4 ,'NH4 ', PTRACERS_names(iNH4 )
123     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
124     & SQUEEZE_RIGHT,myThid)
125     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
126     & iNO2 ,'NO2 ', PTRACERS_names(iNO2 )
127     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
128     & SQUEEZE_RIGHT,myThid)
129     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
130     & iPhy ,'Phy(1) ', PTRACERS_names(iPhy )
131     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
132     & SQUEEZE_RIGHT,myThid)
133     WRITE(msgBuf,'(A,I4,X,A,I4,A,A32)') 'MONOD_CHECK: ',
134     & iPhy+npmax-1,'Phy(',npmax,')', PTRACERS_names(iPhy+npmax-1)
135     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
136     & SQUEEZE_RIGHT,myThid)
137    
138     #ifdef DYNAMIC_CHL
139     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
140     & iChl ,'Chl(1) ', PTRACERS_names(iChl )
141     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
142     & SQUEEZE_RIGHT,myThid)
143     WRITE(msgBuf,'(A,I4,X,A,I4,A,A32)') 'MONOD_CHECK: ',
144     & iChl+npmax-1,'Chl(',npmax,')', PTRACERS_names(iChl+npmax-1)
145     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
146     & SQUEEZE_RIGHT,myThid)
147     #endif
148    
149     #ifdef ALLOW_CARBON
150     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
151     & iDIC ,'DIC ', PTRACERS_names(iDIC )
152     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
153     & SQUEEZE_RIGHT,myThid)
154     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
155     & iDOC ,'DOC ', PTRACERS_names(iDOC )
156     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
157     & SQUEEZE_RIGHT,myThid)
158     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
159     & iPOC ,'POC ', PTRACERS_names(iPOC )
160     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
161     & SQUEEZE_RIGHT,myThid)
162     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
163     & iPIC ,'PIC ', PTRACERS_names(iPIC )
164     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
165     & SQUEEZE_RIGHT,myThid)
166     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
167     & iALK ,'ALK ', PTRACERS_names(iALK )
168     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
169     & SQUEEZE_RIGHT,myThid)
170     WRITE(msgBuf,'(A,I4,X,A,A32)') 'MONOD_CHECK: ',
171     & iO2 ,'iO2 ', PTRACERS_names(iO2 )
172     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
173     & SQUEEZE_RIGHT,myThid)
174     DO nz = 1,nzmax
175     iPtr = iZooC (nz)
176     WRITE(msgBuf,'(A,I4,X,A,I1,A,A32)') 'MONOD_CHECK: ',
177     & iPtr, 'ZooC (',nz,') ', PTRACERS_names(iPtr)
178     CALL PRINT_MESSAGE(msgBuf,standardMessageUnit,
179     & SQUEEZE_RIGHT,myThid)
180     ENDDO
181    
182     #endif
183    
184     RETURN
185     END
186    
187     #endif /* ALLOW_MONOD */
188     #endif /* ALLOW_PTRACERS */
189    

  ViewVC Help
Powered by ViewVC 1.1.22