6 |
|
|
7 |
CBOP |
CBOP |
8 |
subroutine BLING_AIRSEAFLUX( |
subroutine BLING_AIRSEAFLUX( |
9 |
I PTR_DIC, PTR_ALK, PTR_NUT, PTR_O2, |
I PTR_DIC, PTR_ALK, PTR_O2, PTR_NO3, PTR_PO4, |
10 |
O SGDIC, SGO2, |
O SGDIC, SGO2, |
11 |
I bi, bj, imin, imax, jmin, jmax, |
I bi, bj, imin, imax, jmin, jmax, |
12 |
I myIter, myTime, myThid) |
I myIter, myTime, myThid) |
34 |
#ifdef ALLOW_EXF |
#ifdef ALLOW_EXF |
35 |
# include "EXF_FIELDS.h" |
# include "EXF_FIELDS.h" |
36 |
#endif |
#endif |
37 |
#ifdef ALLOW_AUTODIFF_TAMC |
#ifdef ALLOW_AUTODIFF |
38 |
# include "tamc.h" |
# include "tamc.h" |
39 |
#endif |
#endif |
40 |
|
|
49 |
C === Input === |
C === Input === |
50 |
C PTR_DIC :: DIC tracer field |
C PTR_DIC :: DIC tracer field |
51 |
C PTR_ALK :: alkalinity tracer field |
C PTR_ALK :: alkalinity tracer field |
52 |
C PTR_NUT :: macro-nutrient tracer field |
C PTR_NO3 :: nitrate tracer field |
53 |
|
C PTR_PO4 :: phosphate tracer field |
54 |
C PTR_O2 :: oxygen tracer field |
C PTR_O2 :: oxygen tracer field |
55 |
_RL PTR_DIC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
_RL PTR_DIC(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
56 |
_RL PTR_ALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
_RL PTR_ALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
57 |
_RL PTR_NUT(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
_RL PTR_NO3(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
58 |
|
_RL PTR_PO4(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
59 |
_RL PTR_O2 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
_RL PTR_O2 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr) |
60 |
C === Output === |
C === Output === |
61 |
C SGDIC :: tendency of DIC due to air-sea exchange |
C SGDIC :: tendency of DIC due to air-sea exchange |
112 |
|
|
113 |
surfalk(i,j) = PTR_ALK(i,j,1) |
surfalk(i,j) = PTR_ALK(i,j,1) |
114 |
& * maskC(i,j,1,bi,bj) |
& * maskC(i,j,1,bi,bj) |
115 |
surfphos(i,j) = PTR_NUT(i,j,1)/NUTfac |
surfphos(i,j) = PTR_PO4(i,j,1) |
116 |
& * maskC(i,j,1,bi,bj) |
& * maskC(i,j,1,bi,bj) |
117 |
|
|
118 |
C FOR NON-INTERACTIVE Si |
C FOR NON-INTERACTIVE Si |
140 |
|
|
141 |
C Pre-compute part of exchange coefficient: pisvel*(1-fice) |
C Pre-compute part of exchange coefficient: pisvel*(1-fice) |
142 |
C Schmidt number is accounted for later |
C Schmidt number is accounted for later |
143 |
pisvel(i,j) = 0.337 _d 0 *wind(i,j,bi,bj)**2/3.6 _d 5 |
pisvel(i,j) = 0.337 _d 0 * wind(i,j,bi,bj)**2/3.6 _d 5 |
144 |
Kwexch_Pre(i,j) = pisvel(i,j) |
Kwexch_Pre(i,j) = pisvel(i,j) |
145 |
& * (1. _d 0 - FIce(i,j,bi,bj)) |
& * (1. _d 0 - FIce(i,j,bi,bj)) |
146 |
|
|
173 |
ELSE |
ELSE |
174 |
pCO2(i,j,bi,bj) = 0. _d 0 |
pCO2(i,j,bi,bj) = 0. _d 0 |
175 |
ENDIF |
ENDIF |
176 |
|
|
177 |
ENDDO |
ENDDO |
178 |
ENDDO |
ENDDO |
179 |
|
|