/[MITgcm]/MITgcm/pkg/dic/dic_biotic_forcing.F
ViewVC logotype

Diff of /MITgcm/pkg/dic/dic_biotic_forcing.F

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

revision 1.7 by jmc, Sat Dec 4 00:15:14 2004 UTC revision 1.20 by dfer, Fri Apr 4 21:37:05 2008 UTC
# Line 9  C !ROUTINE: DIC_BIOTIC_FORCING Line 9  C !ROUTINE: DIC_BIOTIC_FORCING
9    
10  C !INTERFACE: ==========================================================  C !INTERFACE: ==========================================================
11        SUBROUTINE DIC_BIOTIC_FORCING( PTR_DIC, PTR_ALK, PTR_PO4,        SUBROUTINE DIC_BIOTIC_FORCING( PTR_DIC, PTR_ALK, PTR_PO4,
12       &                            PTR_DOP, PTR_O2,       &                            PTR_DOP,
13    #ifdef ALLOW_O2
14         &                            PTR_O2,
15    #endif
16  #ifdef ALLOW_FE  #ifdef ALLOW_FE
17       &                            PTR_FE,       &                            PTR_FE,
18  #endif  #endif
# Line 27  C !USES: =============================== Line 30  C !USES: ===============================
30  #include "EEPARAMS.h"  #include "EEPARAMS.h"
31  #include "PARAMS.h"  #include "PARAMS.h"
32  #include "GRID.h"  #include "GRID.h"
33  #include "DIC_BIOTIC.h"  #include "DIC_VARS.h"
 #include "DIC_ABIOTIC.h"  
34    
35  C !INPUT PARAMETERS: ===================================================  C !INPUT PARAMETERS: ===================================================
36  C  myThid               :: thread number  C  myThid               :: thread number
# Line 47  C  PTR_FE               :: iron Line 49  C  PTR_FE               :: iron
49        _RL  PTR_ALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_ALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
50        _RL  PTR_PO4(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_PO4(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
51        _RL  PTR_DOP(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_DOP(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
52    #ifdef ALLOW_O2
53        _RL  PTR_O2(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_O2(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
54    #endif
55  #ifdef ALLOW_FE  #ifdef ALLOW_FE
56        _RL  PTR_FE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_FE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
57  #endif  #endif
# Line 63  C  SURA                   :: tendency of Line 67  C  SURA                   :: tendency of
67  C  SURC                   :: tendency of DIC due to air-sea exchange  C  SURC                   :: tendency of DIC due to air-sea exchange
68  C                            and virtual flux  C                            and virtual flux
69  C  SURO                   :: tendency of O2 due to air-sea exchange  C  SURO                   :: tendency of O2 due to air-sea exchange
70  C  BIO                    :: tendency of PO4 due to biological productivity,  C  GPO4                   :: tendency of PO4 due to biological productivity,
71  C                            exchange with DOP pool and reminerization  C                            exchange with DOP pool and reminerization
72  C  CAR                    :: carbonate changes due to biological  C  CAR                    :: carbonate changes due to biological
73  C                             productivity and reminerization  C                             productivity and remineralization
74  C  bioac                  :: biological productivity  C  BIOac                  :: biological productivity
75  C  pflux                  :: changes to PO4 due to flux and reminerlization  C  RDOP                   :: DOP sink due to remineralization
76  c  cflux                  :: carbonate changes due to flux and reminerlization  C  pflux                  :: changes to PO4 due to flux and remineralization
77  c  freefe                 :: iron not bound to ligand  C  CAR_S                  :: carbonate sink
78    C  cflux                  :: carbonate changes due to flux and remineralization
79    C  freefe                 :: iron not bound to ligand
80        _RL  GDIC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GDIC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
81        _RL  GALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
82        _RL  GPO4(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GPO4(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
83        _RL  GDOP(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GDOP(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
       _RL  GO2(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)  
84        _RL  SURA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
85        _RL  SURC(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURC(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
86        _RL  SURO(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURO(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
       _RL  BIO(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)  
87        _RL  CAR(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  CAR(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
88        _RL  bioac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  BIOac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
89          _RL  RDOP(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
90        _RL  pflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  pflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
91          _RL  exportflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
92          _RL  CAR_S(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
93        _RL  cflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  cflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
94    #ifdef ALLOW_O2
95          _RL  GO2(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
96    #endif
97  #ifdef ALLOW_FE  #ifdef ALLOW_FE
98        _RL  GFE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GFE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
99        _RL  freefe(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  freefe(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
100  #endif  #endif
101         INTEGER I,J,k         INTEGER I,J,k
102           INTEGER nCALCITEstep
103  CEOP  CEOP
104           jmin=1
105           jmax=sNy
106           imin=1
107           imax=sNx
108    
109         DO k=1,Nr         DO k=1,Nr
110           DO j=1-OLy,sNy+OLy           DO j=1-OLy,sNy+OLy
111            DO i=1-OLx,sNx+OLx            DO i=1-OLx,sNx+OLx
112             GDIC(i,j,k)=0.d0             RDOP(i,j,k) =0. _d 0
113             GALK(i,j,k)=0.d0             GDIC(i,j,k) =0. _d 0
114             GPO4(i,j,k)=0.d0             GALK(i,j,k) =0. _d 0
115             GDOP(i,j,k)=0.d0             GPO4(i,j,k) =0. _d 0
116             GO2(i,j,k)=0.d0             GDOP(i,j,k) =0. _d 0
117             SURA(i,j)=0.d0             CAR(i,j,k)  =0. _d 0
118             SURC(i,j)=0.d0             BIOac(i,j,k)   =0. _d 0
119             CAR(i,j,k)=0.d0             pflux(i,j,k)   =0. _d 0
120             BIO(i,j,k)=0.d0             exportflux(i,j,k)=0. _d 0
121             bioac(i,j,k)=0.d0             cflux(i,j,k)   =0. _d 0
122             pflux(i,j,k)=0.d0             CAR_S(i,j,k)   =0. _d 0
123             cflux(i,j,k)=0.d0  #ifdef ALLOW_O2
124               GO2(i,j,k)     =0. _d 0
125    #endif
126  #ifdef ALLOW_FE  #ifdef ALLOW_FE
127             GFE(i,j,k)=0.d0             GFE(i,j,k)     =0. _d 0
128             freefe(i,j,k)=0.d0             freefe(i,j,k)  =0. _d 0
129  #endif  #endif
130            ENDDO            ENDDO
131           ENDDO           ENDDO
132         ENDDO         ENDDO
133             DO j=1-OLy,sNy+OLy
134              DO i=1-OLx,sNx+OLx
135               SURA(i,j)   =0. _d 0
136               SURC(i,j)   =0. _d 0
137               SURO(i,j)   =0. _d 0
138              ENDDO
139             ENDDO
140    
141  c carbon air-sea interaction  c carbon air-sea interaction
142         CALL DIC_SURFFORCING( PTR_DIC, SURC,         CALL DIC_SURFFORCING( PTR_DIC, PTR_ALK, PTR_PO4, SURC,
143       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
144       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
145    
# Line 124  c alkalinity air-sea interaction Line 148  c alkalinity air-sea interaction
148       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
149       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
150    
151  c carbon air-sea interaction  #ifdef ALLOW_O2
152    c oxygen air-sea interaction
153         CALL O2_SURFFORCING( PTR_O2, SURO,         CALL O2_SURFFORCING( PTR_O2, SURO,
154       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
155       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
156    #endif
157    
158  #ifdef ALLOW_FE  #ifdef ALLOW_FE
159  c find free iron  c find free iron
# Line 141  c biological activity Line 167  c biological activity
167  #ifdef ALLOW_FE  #ifdef ALLOW_FE
168       I           PTR_FE,       I           PTR_FE,
169  #endif  #endif
170       I           bioac,       I           BIOac,
171       I           bi,bj,imin,imax,jmin,jmax,       I           bi,bj,imin,imax,jmin,jmax,
172       I           myIter,myTime,myThid)       I           myIter,myTime,myThid)
173    
174  c flux of po4 from layers with biological activity  c flux of po4 from layers with biological activity
175         CALL PHOS_FLUX( bioac, pflux,         CALL PHOS_FLUX( BIOac, pflux, exportflux,
176       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
177       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
178    
179    C- Carbonate sink
180           DO k=1,Nr
181             DO j=jmin,jmax
182              DO i=imin,imax
183                 CAR_S(i,j,k)=BIOac(i,j,k)*R_CP*rain_ratio(i,j,bi,bj)*
184         &                    (1. _d 0-DOPfraction)
185              ENDDO
186             ENDDO
187           ENDDO
188    
189  c carbonate  c carbonate
190          CALL CAR_FLUX( bioac, cflux,  #ifdef CAR_DISS
191    c dissolution only below saturation horizon
192    c code following methid by Karsten Friis
193             nCALCITEstep = 3600
194             IF(myIter .lt. (nIter0+5) .or.
195         &               mod(myIter,nCALCITEstep) .eq. 0)THEN
196               CALL CALCITE_SATURATION(PTR_DIC, PTR_ALK, PTR_PO4,
197         I                    bi,bj,imin,imax,jmin,jmax,
198         I                    myIter,myTime,myThid)
199            ENDIF
200    c
201            CALL CAR_FLUX_OMEGA_TOP( BIOac, cflux,
202         &                    bi,bj,imin,imax,jmin,jmax,
203         &                    myIter,myTime,myThid)
204    #else
205    c old OCMIP way
206            CALL CAR_FLUX( CAR_S, cflux,
207       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
208       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
209    #endif
210    
211  c add all tendencies for PO4, DOP, ALK, DIC  c add all tendencies for PO4, DOP, ALK, DIC
212         DO k=1,Nr         DO k=1,Nr
213           DO j=1-OLy,sNy+OLy           DO j=jmin,jmax
214            DO i=1-OLx,sNx+OLx            DO i=imin,imax
215             bio(i,j,k)=-bioac(i,j,k)+pflux(i,j,k)  #ifdef DIC_NO_NEG
216       &         + maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)             RDOP(i,j,k)= MAX(maskC(i,j,k,bi,bj)*KDOPRemin*PTR_DOP(i,j,k)
217             car(i,j,k)=-bioac(i,j,k)* R_cp*rain_ratio(i,j,bi,bj)*       &                     ,0. _d 0)
218       &                (1.0-DOPfraction)+cflux(i,j,k)  #else
219             GPO4(i,j,k)=bio(i,j,k)             RDOP(i,j,k)= maskC(i,j,k,bi,bj)*KDOPRemin*PTR_DOP(i,j,k)
220             GDOP(i,j,k)=+bioac(i,j,k)*DOPfraction  #endif
221       &         - maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)             GPO4(i,j,k)=-BIOac(i,j,k)+pflux(i,j,k) + RDOP(i,j,k)
222             GALK(i,j,k)=+2.d0*car(i,j,k)-R_NP*bio(i,j,k)  
223             GDIC(i,j,k)=car(i,j,k)+R_CP*bio(i,j,k)             car(i,j,k) = cflux(i,j,k) - CAR_S(i,j,k)
224             if (PTR_O2(i,j,k).gt.o2crit) then  
225               GO2(i,j,k)=R_OP*bio(i,j,k)             GDOP(i,j,k)=+BIOac(i,j,k)*DOPfraction - RDOP(i,j,k)
226    
227               GALK(i,j,k)=+2. _d 0 *car(i,j,k)-R_NP*GPO4(i,j,k)
228    
229               GDIC(i,j,k)=car(i,j,k)+R_CP*GPO4(i,j,k)
230    
231    #ifdef ALLOW_O2
232               if (PTR_O2(i,j,k).GT.O2crit) then
233                 GO2(i,j,k)= R_OP*GPO4(i,j,k)
234             else             else
235               GO2(i,j,k)=0.d0               GO2(i,j,k)= 0. _d 0
236             endif             endif
237    #endif
238  #ifdef ALLOW_FE  #ifdef ALLOW_FE
239             GFE(i,j,k)=R_FeP*bio(i,j,k)             GFE(i,j,k) = R_FeP*GPO4(i,j,k)
240       &             -Kscav*freefe(i,j,k)       &                 -Kscav*freefe(i,j,k)
241  #endif  #endif
242             IF (K.eq.1) then            ENDDO
243             ENDDO
244           ENDDO
245    
246             DO j=jmin,jmax
247              DO i=imin,imax
248                 GALK(i,j,1)=GALK(i,j,1)+SURA(i,j)                 GALK(i,j,1)=GALK(i,j,1)+SURA(i,j)
249                 GDIC(i,j,1)=GDIC(i,j,1)+SURC(i,j)                 GDIC(i,j,1)=GDIC(i,j,1)+SURC(i,j)
250                 GO2(i,j,1)=GO2(i,j,1)+SURO(i,j)  #ifdef ALLOW_O2
251                   GO2(i,j,1) =GO2(i,j,1)+SURO(i,j)
252    #endif
253  #ifdef ALLOW_FE  #ifdef ALLOW_FE
254                 GFE(i,j,1)=GFE(i,j,1)+alpfe*                 GFE(i,j,1)=GFE(i,j,1)+alpfe*
255       &                    InputFe(i,j,bi,bj)/drF(1)       &                    InputFe(i,j,bi,bj)*recip_drF(1)
256         &                       *recip_hFacC(i,j,1,bi,bj)
257  #endif  #endif
            ENDIF  
258            ENDDO            ENDDO
259           ENDDO           ENDDO
        ENDDO  
260    
261    
262  C update  C update
263         DO k=1,Nr         DO k=1,Nr
264           DO j=1-OLy,sNy+OLy           DO j=jmin,jmax
265            DO i=1-OLx,sNx+OLx            DO i=imin,imax
266             PTR_DIC(i,j,k)=             PTR_DIC(i,j,k)=
267       &      PTR_DIC(i,j,k)+GDIC(i,j,k)*dTtracerLev(k)       &      PTR_DIC(i,j,k)+GDIC(i,j,k)*dTtracerLev(k)
268             PTR_ALK(i,j,k)=             PTR_ALK(i,j,k)=
# Line 203  C update Line 271  C update
271       &      PTR_PO4(i,j,k)+GPO4(i,j,k)*dTtracerLev(k)       &      PTR_PO4(i,j,k)+GPO4(i,j,k)*dTtracerLev(k)
272             PTR_DOP(i,j,k)=             PTR_DOP(i,j,k)=
273       &      PTR_DOP(i,j,k)+GDOP(i,j,k)*dTtracerLev(k)       &      PTR_DOP(i,j,k)+GDOP(i,j,k)*dTtracerLev(k)
274    #ifdef ALLOW_O2
275             PTR_O2(i,j,k)=             PTR_O2(i,j,k)=
276       &      PTR_O2(i,j,k)+GO2(i,j,k)*dTtracerLev(k)       &      PTR_O2(i,j,k)+GO2(i,j,k)*dTtracerLev(k)
277    #endif
278  #ifdef ALLOW_FE  #ifdef ALLOW_FE
279             PTR_FE(i,j,k)=             PTR_FE(i,j,k)=
280       &      PTR_FE(i,j,k)+GFE(i,j,k)*dTtracerLev(k)       &      PTR_FE(i,j,k)+GFE(i,j,k)*dTtracerLev(k)
# Line 213  C update Line 283  C update
283           ENDDO           ENDDO
284         ENDDO         ENDDO
285    
286    #ifdef ALLOW_FE
287    #ifdef MINFE
288    c find free iron and get rid of insoluble part
289           call fe_chem(bi,bj,iMin,iMax,jMin,jMax, PTR_FE, freefe,
290         &                myIter, mythid)
291    #endif
292    #endif
293    
294    
295  #ifdef ALLOW_TIMEAVE  #ifdef ALLOW_TIMEAVE
296  c save averages  c save averages
297          IF ( taveFreq.GT.0. ) THEN
298        DO k=1,Nr        DO k=1,Nr
299           DO j=1-OLy,sNy+OLy           DO j=jmin,jmax
300            DO i=1-OLx,sNx+OLx            DO i=imin,imax
301              BIOave(i,j,k,bi,bj)=BIOave(i,j,k,bi,bj)+              BIOave(i,j,k,bi,bj)   =BIOave(i,j,k,bi,bj)+
302       &                          BIOac(i,j,k)*deltaTclock       &                             BIOac(i,j,k)*deltaTclock
303              CARave(i,j,k,bi,bj)=CARave(i,j,k,bi,bj)+              CARave(i,j,k,bi,bj)   =CARave(i,j,k,bi,bj)+
304       &                          CAR(i,j,k)*deltaTclock       &                             CAR(i,j,k)*deltaTclock
305              if (k.eq.1) then              OmegaCave(i,j,k,bi,bj)=OmegaCave(i,j,k,bi,bj)+
306                SURave(i,j,bi,bj)=SURave(i,j,bi,bj)+       &                             OmegaC(i,j,k,bi,bj)*deltaTclock
307       &                          SURC(i,j)*deltaTclock              pfluxave(i,j,k,bi,bj) =pfluxave(i,j,k,bi,bj) +
308                SUROave(i,j,bi,bj)=SUROave(i,j,bi,bj)+       &                             pflux(i,j,k)*deltaTclock
309       &                           SURO(i,j)*deltaTclock              epfluxave(i,j,k,bi,bj)=epfluxave(i,j,k,bi,bj) +
310                pCO2ave(i,j,bi,bj)=pCO2ave(i,j,bi,bj)+       &                             exportflux(i,j,k)*deltaTclock
311       &                           pCO2(i,j,bi,bj)*deltaTclock              cfluxave(i,j,k,bi,bj) =cfluxave(i,j,k,bi,bj) +
312                pHave(i,j,bi,bj)=pHave(i,j,bi,bj)+       &                             cflux(i,j,k)*deltaTclock
313       &                           pH(i,j,bi,bj)*deltaTclock            ENDDO
314             ENDDO
315          ENDDO
316             DO j=jmin,jmax
317              DO i=imin,imax
318                  SURave(i,j,bi,bj)    =SURave(i,j,bi,bj)+
319         &                              SURC(i,j)*deltaTclock
320    #ifdef ALLOW_O2
321                  SUROave(i,j,bi,bj)   =SUROave(i,j,bi,bj)+
322         &                              SURO(i,j)*deltaTclock
323    #endif
324                  pCO2ave(i,j,bi,bj)   =pCO2ave(i,j,bi,bj)+
325         &                              pCO2(i,j,bi,bj)*deltaTclock
326                  pHave(i,j,bi,bj)     =pHave(i,j,bi,bj)+
327         &                              pH(i,j,bi,bj)*deltaTclock
328                fluxCO2ave(i,j,bi,bj)=fluxCO2ave(i,j,bi,bj)+                fluxCO2ave(i,j,bi,bj)=fluxCO2ave(i,j,bi,bj)+
329       &                           fluxCO2(i,j,bi,bj)*deltaTclock       &                           fluxCO2(i,j,bi,bj)*deltaTclock
             endif  
330            ENDDO            ENDDO
331           ENDDO           ENDDO
       ENDDO  
332        do k=1,Nr        do k=1,Nr
333         dic_timeave(bi,bj,k)=dic_timeave(bi,bj,k)+deltaTclock         dic_timeave(bi,bj,k)=dic_timeave(bi,bj,k)+deltaTclock
334        enddo        enddo
335  #endif        ENDIF
336    #endif /* ALLOW_TIMEAVE*/
337    
338    C---+----1----+----2----+----3----+----4----+----5----+----6----+----7-|--+----|
339    
340    #ifdef ALLOW_DIAGNOSTICS
341    
342          IF ( useDiagnostics ) THEN
343    
344            CALL DIAGNOSTICS_FILL(BIOac  ,'DICBIOA ',0,Nr,2,bi,bj,myThid)
345            CALL DIAGNOSTICS_FILL(CAR    ,'DICCARB ',0,Nr,2,bi,bj,myThid)
346            CALL DIAGNOSTICS_FILL(pCO2   ,'DICPCO2 ',0,1 ,1,bi,bj,myThid)
347            CALL DIAGNOSTICS_FILL(fluxCO2,'DICCFLX ',0,1 ,1,bi,bj,myThid)
348            CALL DIAGNOSTICS_FILL(pH     ,'DICPHAV ',0,1 ,1,bi,bj,myThid)
349            CALL DIAGNOSTICS_FILL(SURC   ,'DICTFLX ',0,1 ,2,bi,bj,myThid)
350    #ifdef ALLOW_O2
351            CALL DIAGNOSTICS_FILL(SURO   ,'DICOFLX ',0,1 ,2,bi,bj,myThid)
352  #endif  #endif
353  #endif  
354          ENDIF
355    
356    #endif /* ALLOW_DIAGNOSTICS */
357    
358    #endif /* DIC_BIOTIC */
359    #endif /* ALLOW_PTRACERS */
360    
361  c  c
362         RETURN         RETURN

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.20

  ViewVC Help
Powered by ViewVC 1.1.22