/[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.15 by dfer, Fri Aug 24 16:06:25 2007 UTC revision 1.16 by dfer, Thu Oct 25 18:38:31 2007 UTC
# Line 68  C  SURA                   :: tendency of Line 68  C  SURA                   :: tendency of
68  C  SURC                   :: tendency of DIC due to air-sea exchange  C  SURC                   :: tendency of DIC due to air-sea exchange
69  C                            and virtual flux  C                            and virtual flux
70  C  SURO                   :: tendency of O2 due to air-sea exchange  C  SURO                   :: tendency of O2 due to air-sea exchange
71  C  BIO                    :: tendency of PO4 due to biological productivity,  C  GPO4                   :: tendency of PO4 due to biological productivity,
72  C                            exchange with DOP pool and reminerization  C                            exchange with DOP pool and reminerization
73  C  CAR                    :: carbonate changes due to biological  C  CAR                    :: carbonate changes due to biological
74  C                             productivity and reminerization  C                             productivity and reminerization
# Line 83  c  freefe                 :: iron not bo Line 83  c  freefe                 :: iron not bo
83        _RL  SURA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURA(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
84        _RL  SURC(1-OLx:sNx+OLx,1-OLy:sNy+OLy)        _RL  SURC(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
85        _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)  
       _RL  BIO_kar(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)  
86        _RL  CAR(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  CAR(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
87        _RL  BIOac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  BIOac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
88        _RL  pflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  pflux(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
# Line 112  CEOP Line 110  CEOP
110             GALK(i,j,k) =0. _d 0             GALK(i,j,k) =0. _d 0
111             GPO4(i,j,k) =0. _d 0             GPO4(i,j,k) =0. _d 0
112             GDOP(i,j,k) =0. _d 0             GDOP(i,j,k) =0. _d 0
            SURA(i,j)   =0. _d 0  
            SURC(i,j)   =0. _d 0  
113             CAR(i,j,k)  =0. _d 0             CAR(i,j,k)  =0. _d 0
            BIO(i,j,k)  =0. _d 0  
            BIO_kar(i,j,k) =0. _d 0  
114             BIOac(i,j,k)   =0. _d 0             BIOac(i,j,k)   =0. _d 0
115             pflux(i,j,k)   =0. _d 0             pflux(i,j,k)   =0. _d 0
116             exportflux(i,j,k)=0. _d 0             exportflux(i,j,k)=0. _d 0
# Line 131  CEOP Line 125  CEOP
125            ENDDO            ENDDO
126           ENDDO           ENDDO
127         ENDDO         ENDDO
128             DO j=1-OLy,sNy+OLy
129              DO i=1-OLx,sNx+OLx
130               SURA(i,j)   =0. _d 0
131               SURC(i,j)   =0. _d 0
132               SURO(i,j)   =0. _d 0
133              ENDDO
134             ENDDO
135    
136  c carbon air-sea interaction  c carbon air-sea interaction
137         CALL DIC_SURFFORCING( PTR_DIC, PTR_ALK, PTR_PO4, SURC,         CALL DIC_SURFFORCING( PTR_DIC, PTR_ALK, PTR_PO4, SURC,
# Line 196  c add all tendencies for PO4, DOP, ALK, Line 197  c add all tendencies for PO4, DOP, ALK,
197         DO k=1,Nr         DO k=1,Nr
198           DO j=jmin,jmax           DO j=jmin,jmax
199            DO i=imin,imax            DO i=imin,imax
200             bio(i,j,k)=-BIOac(i,j,k)+pflux(i,j,k)  
201               GPO4(i,j,k)=-BIOac(i,j,k)+pflux(i,j,k)
202       &         + maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)       &         + maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)
203             car(i,j,k)=-BIOac(i,j,k)* R_cp*rain_ratio(i,j,bi,bj)*  
204       &                (1.0-DOPfraction)+cflux(i,j,k)             car(i,j,k) =-BIOac(i,j,k)* R_CP*rain_ratio(i,j,bi,bj)*
205             GPO4(i,j,k)=bio(i,j,k)       &                (1. _d 0-DOPfraction)+cflux(i,j,k)
206    
207             GDOP(i,j,k)=+BIOac(i,j,k)*DOPfraction             GDOP(i,j,k)=+BIOac(i,j,k)*DOPfraction
208       &         - maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)       &         - maskC(i,j,k,bi,bj)*Kdopremin*PTR_DOP(i,j,k)
209             GALK(i,j,k)=+2.d0*car(i,j,k)-R_NP*bio(i,j,k)  
210             BIO_kar(i,j,k)=R_NP*bio(i,j,k)             GALK(i,j,k)=+2. _d 0 *car(i,j,k)-R_NP*GPO4(i,j,k)
211             GDIC(i,j,k)=car(i,j,k)+R_CP*bio(i,j,k)  
212               GDIC(i,j,k)=car(i,j,k)+R_CP*GPO4(i,j,k)
213    
214  #ifdef ALLOW_O2  #ifdef ALLOW_O2
215             if (PTR_O2(i,j,k).gt.o2crit) then             if (PTR_O2(i,j,k).GT.O2crit) then
216               GO2(i,j,k)=R_OP*bio(i,j,k)               GO2(i,j,k)= R_OP*GPO4(i,j,k)
217             else             else
218               GO2(i,j,k)=0.d0               GO2(i,j,k)= 0. _d 0
219             endif             endif
220  #endif  #endif
221  #ifdef ALLOW_FE  #ifdef ALLOW_FE
222             GFE(i,j,k)=R_FeP*bio(i,j,k)             GFE(i,j,k) =R_FeP*GPO4(i,j,k)
223       &             -Kscav*freefe(i,j,k)       &             -Kscav*freefe(i,j,k)
224  #endif  #endif
225             IF (K.eq.1) then            ENDDO
226             ENDDO
227           ENDDO
228    
229             DO j=jmin,jmax
230              DO i=imin,imax
231                 GALK(i,j,1)=GALK(i,j,1)+SURA(i,j)                 GALK(i,j,1)=GALK(i,j,1)+SURA(i,j)
232                 GDIC(i,j,1)=GDIC(i,j,1)+SURC(i,j)                 GDIC(i,j,1)=GDIC(i,j,1)+SURC(i,j)
233  #ifdef ALLOW_O2  #ifdef ALLOW_O2
234                 GO2(i,j,1)=GO2(i,j,1)+SURO(i,j)                 GO2(i,j,1) =GO2(i,j,1)+SURO(i,j)
235  #endif  #endif
236  #ifdef ALLOW_FE  #ifdef ALLOW_FE
237                 GFE(i,j,1)=GFE(i,j,1)+alpfe*                 GFE(i,j,1)=GFE(i,j,1)+alpfe*
238       &                    InputFe(i,j,bi,bj)*recip_drF(1)       &                    InputFe(i,j,bi,bj)*recip_drF(1)
239       &                       *recip_hFacC(i,j,1,bi,bj)       &                       *recip_hFacC(i,j,1,bi,bj)
240  #endif  #endif
            ENDIF  
241            ENDDO            ENDDO
242           ENDDO           ENDDO
        ENDDO  
243    
244    
245  C update  C update

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

  ViewVC Help
Powered by ViewVC 1.1.22