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

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

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

revision 1.4 by jmc, Tue Oct 28 22:19:53 2003 UTC revision 1.5 by stephd, Thu Feb 12 16:11:46 2004 UTC
# Line 1  Line 1 
1  #include "DIC_OPTIONS.h"  #include "DIC_OPTIONS.h"
2  #include "GCHEM_OPTIONS.h"  #include "GCHEM_OPTIONS.h"
3    
4  CStartOfInterFace  CBOP
5    C !ROUTINE: BIO_EXPORT
6    
7    C !INTERFACE: ==========================================================
8        SUBROUTINE BIO_EXPORT( PTR_PO4 ,        SUBROUTINE BIO_EXPORT( PTR_PO4 ,
9  #ifdef ALLOW_FE  #ifdef ALLOW_FE
10       I           PTR_FE,       I           PTR_FE,
# Line 10  CStartOfInterFace Line 13  CStartOfInterFace
13       I           bi,bj,imin,imax,jmin,jmax,       I           bi,bj,imin,imax,jmin,jmax,
14       I           myIter,myTime,myThid)       I           myIter,myTime,myThid)
15    
16  C     /==========================================================\  c !DESCRIPTION:
17  C     | SUBROUTINE BIO_EXPORT                                     |  C  Calculate biological activity and export                
 C     | o Calculate biological activity and export                |  
 C     |==========================================================|  
       IMPLICIT NONE  
18    
19  C     == GLobal variables ==  C !USES: ===============================================================
20          IMPLICIT NONE
21  #include "SIZE.h"  #include "SIZE.h"
22  #include "DYNVARS.h"  #include "DYNVARS.h"
23  #include "EEPARAMS.h"  #include "EEPARAMS.h"
# Line 25  C     == GLobal variables == Line 26  C     == GLobal variables ==
26  #include "DIC_ABIOTIC.h"  #include "DIC_ABIOTIC.h"
27  #include "DIC_BIOTIC.h"  #include "DIC_BIOTIC.h"
28    
29  C     == Routine arguments ==  C !INPUT PARAMETERS: ===================================================
30    C  myThid               :: thread number
31    C  myIter               :: current timestep
32    C  myTime               :: current time
33    C  PTR_PO4              :: phosphate tracer field
34    C  PTR_FE               :: iron tracer field
35        INTEGER myIter        INTEGER myIter
36        _RL myTime        _RL myTime
37        INTEGER myThid        INTEGER myThid
# Line 33  C     == Routine arguments == Line 39  C     == Routine arguments ==
39  #ifdef ALLOW_FE  #ifdef ALLOW_FE
40        _RL  PTR_FE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)        _RL  PTR_FE(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
41  #endif  #endif
       _RL bioac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nR)  
       _RL sfac(1-OLy:sNy+OLy)  
       _RL lit, atten  
42        INTEGER imin, imax, jmin, jmax, bi, bj        INTEGER imin, imax, jmin, jmax, bi, bj
43    
44    
45    C !OUTPUT PARAMETERS: ==================================================
46    C  bioac               :: biological productivity (will be split
47    C                         between export and dissolved pool)
48          _RL bioac(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nR)
49    
50  #ifdef ALLOW_PTRACERS  #ifdef ALLOW_PTRACERS
51  #ifdef DIC_BIOTIC  #ifdef DIC_BIOTIC
52  C     == Local variables ==  
53    C !LOCAL VARIABLES: ====================================================
54    C  i,j,k                  :: loop indices
55         INTEGER I,J,k         INTEGER I,J,k
56  c        _RL sfac(1-OLy:sNy+OLy)
57          _RL lit, atten
58    CEOP
59          call insol(myTime,sfac,bj)          call insol(myTime,sfac,bj)
60          DO j=1-OLy,sNy+OLy          DO j=1-OLy,sNy+OLy
61           DO i=1-OLx,sNx+OLx           DO i=1-OLx,sNx+OLx
# Line 62  C$TAF STORE lit = bio_export Line 75  C$TAF STORE lit = bio_export
75                   print*,'QQ lit', lit                   print*,'QQ lit', lit
76               endif               endif
77               bioac(i,j,k)=alpha(i,j,bi,bj)*               bioac(i,j,k)=alpha(i,j,bi,bj)*
78       &                    PTR_PO4(i,j,k)/(PTR_PO4(i,j,k)+KPO4)*       &                    lit/(lit+lit0)*maskC(i,j,k,bi,bj)*
79  #ifdef ALLOW_FE  #ifdef ALLOW_FE
80       &                    PTR_FE(i,j,k)/(PTR_FE(i,j,k)+KFE)*       &                    min(PTR_PO4(i,j,k)/(PTR_PO4(i,j,k)+KPO4),
81         &                        PTR_FE(i,j,k)/(PTR_FE(i,j,k)+KFE) )
82    #else
83         &                    PTR_PO4(i,j,k)/(PTR_PO4(i,j,k)+KPO4)
84  #endif  #endif
      &                    lit/(lit+lit0)*maskC(i,j,k,bi,bj)  
85              ENDDO              ENDDO
86            ENDDO            ENDDO
87          ENDDO          ENDDO

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5

  ViewVC Help
Powered by ViewVC 1.1.22