/[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.24 by dfer, Tue Dec 29 01:13:47 2009 UTC revision 1.25 by jmc, Sat Jan 2 22:59:16 2010 UTC
# Line 99  C  freefe                 :: iron not bo Line 99  C  freefe                 :: iron not bo
99        _RL  GFE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  GFE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
100        _RL  freefe(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  freefe(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
101  #endif  #endif
102         INTEGER I,J,k         INTEGER i,j,k
103    #ifdef CAR_DISS
104         INTEGER nCALCITEstep         INTEGER nCALCITEstep
105    #endif
106  CEOP  CEOP
107    
108         DO k=1,Nr         DO k=1,Nr
# Line 135  CEOP Line 137  CEOP
137            ENDDO            ENDDO
138           ENDDO           ENDDO
139    
140  c carbon air-sea interaction  C carbon air-sea interaction
141         CALL DIC_SURFFORCING( PTR_DIC, PTR_ALK, PTR_PO4, SURC,         CALL DIC_SURFFORCING( PTR_DIC, PTR_ALK, PTR_PO4, SURC,
142       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
143       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
144    
145  c alkalinity air-sea interaction  C alkalinity air-sea interaction
146         CALL ALK_SURFFORCING( PTR_ALK, SURA,         CALL ALK_SURFFORCING( PTR_ALK, SURA,
147       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
148       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
149    
150  #ifdef ALLOW_O2  #ifdef ALLOW_O2
151  c oxygen air-sea interaction  C oxygen air-sea interaction
152         CALL O2_SURFFORCING( PTR_O2, SURO,         CALL O2_SURFFORCING( PTR_O2, SURO,
153       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
154       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
155  #endif  #endif
156    
157  #ifdef ALLOW_FE  #ifdef ALLOW_FE
158  c find free iron  C find free iron
159         CALL FE_CHEM(bi,bj,iMin,iMax,jMin,jMax, PTR_FE, freefe,         CALL FE_CHEM(bi,bj,iMin,iMax,jMin,jMax, PTR_FE, freefe,
160       &                myIter, mythid)       &                myIter, mythid)
161  #endif  #endif
162    
163    
164  c biological activity  C biological activity
165         CALL BIO_EXPORT( PTR_PO4 ,         CALL BIO_EXPORT( PTR_PO4 ,
166  #ifdef ALLOW_FE  #ifdef ALLOW_FE
167       I           PTR_FE,       I           PTR_FE,
# Line 168  c biological activity Line 170  c biological activity
170       I           bi,bj,imin,imax,jmin,jmax,       I           bi,bj,imin,imax,jmin,jmax,
171       I           myIter,myTime,myThid)       I           myIter,myTime,myThid)
172    
173  c flux of po4 from layers with biological activity  C flux of po4 from layers with biological activity
174         CALL PHOS_FLUX( BIOac, pflux, exportflux,         CALL PHOS_FLUX( BIOac, pflux, exportflux,
175       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
176       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
# Line 183  C- Carbonate sink Line 185  C- Carbonate sink
185           ENDDO           ENDDO
186         ENDDO         ENDDO
187    
188  c carbonate  C carbonate
189  #ifdef CAR_DISS  #ifdef CAR_DISS
190  c dissolution only below saturation horizon  C dissolution only below saturation horizon
191  c code following methid by Karsten Friis  C code following methid by Karsten Friis
192           nCALCITEstep = 3600           nCALCITEstep = 3600
193           IF(myIter .lt. (nIter0+5) .or.           IF(myIter .lt. (nIter0+5) .or.
194       &               mod(myIter,nCALCITEstep) .eq. 0)THEN       &               mod(myIter,nCALCITEstep) .eq. 0)THEN
# Line 199  c Line 201  c
201       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
202       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
203  #else  #else
204  c old OCMIP way  C old OCMIP way
205          CALL CAR_FLUX( CAR_S, cflux,          CALL CAR_FLUX( CAR_S, cflux,
206       &                    bi,bj,imin,imax,jmin,jmax,       &                    bi,bj,imin,imax,jmin,jmax,
207       &                    myIter,myTime,myThid)       &                    myIter,myTime,myThid)
208  #endif  #endif
209    
210  c add all tendencies for PO4, DOP, ALK, DIC  C add all tendencies for PO4, DOP, ALK, DIC
211         DO k=1,Nr         DO k=1,Nr
212           DO j=jmin,jmax           DO j=jmin,jmax
213            DO i=imin,imax            DO i=imin,imax
# Line 290  c find free iron and get rid of insolubl Line 292  c find free iron and get rid of insolubl
292    
293    
294  #ifdef ALLOW_TIMEAVE  #ifdef ALLOW_TIMEAVE
295  c save averages  C save averages
296         IF ( taveFreq.GT.0. ) THEN         IF ( taveFreq.GT.0. ) THEN
297          DO k=1,Nr          DO k=1,Nr
298           DO j=jmin,jmax           DO j=jmin,jmax
# Line 326  c save averages Line 328  c save averages
328       &                           fluxCO2(i,j,bi,bj)*deltaTclock       &                           fluxCO2(i,j,bi,bj)*deltaTclock
329            ENDDO            ENDDO
330           ENDDO           ENDDO
331           DO k=1,Nr           DIC_timeAve(bi,bj) = DIC_timeAve(bi,bj)+deltaTclock
           DIC_timeAve(k,bi,bj) = DIC_timeAve(k,bi,bj)+deltaTclock  
          ENDDO  
332         ENDIF         ENDIF
333  #endif /* ALLOW_TIMEAVE*/  #endif /* ALLOW_TIMEAVE*/
334    
# Line 355  C---+----1----+----2----+----3----+----4 Line 355  C---+----1----+----2----+----3----+----4
355  #endif /* DIC_BIOTIC */  #endif /* DIC_BIOTIC */
356  #endif /* ALLOW_PTRACERS */  #endif /* ALLOW_PTRACERS */
357    
 c  
358         RETURN         RETURN
359         END         END

Legend:
Removed from v.1.24  
changed lines
  Added in v.1.25

  ViewVC Help
Powered by ViewVC 1.1.22