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

Annotation of /MITgcm/pkg/dic/alk_surfforcing.F

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


Revision 1.1 - (hide annotations) (download)
Wed Jun 25 21:00:36 2003 UTC (21 years ago) by stephd
Branch: MAIN
CVS Tags: checkpoint51e_post, checkpoint51j_post, checkpoint51a_post, checkpoint51c_post, checkpoint51f_pre, checkpoint51f_post, checkpoint51b_post, checkpoint51b_pre, branchpoint-genmake2, checkpoint51h_pre, checkpoint51g_post, checkpoint51d_post, checkpoint51i_pre
Branch point for: branch-genmake2
initial checking in biogeochemistry packages

1 stephd 1.1 #include "CPP_OPTIONS.h"
2     #include "GCHEM_OPTIONS.h"
3    
4     CStartOfInterFace
5     SUBROUTINE ALK_SURFFORCING( PTR_ALK , GALK,
6     I bi,bj,imin,imax,jmin,jmax,
7     I myIter,myTime,myThid)
8    
9     C /==========================================================\
10     C | SUBROUTINE ALK_SURFFORCING |
11     C | o Calculate the alkalinity change due to freshwater flux |
12     C |==========================================================|
13     IMPLICIT NONE
14    
15     C == GLobal variables ==
16     #include "SIZE.h"
17     #include "DYNVARS.h"
18     #include "EEPARAMS.h"
19     #include "PARAMS.h"
20     #include "GRID.h"
21     #include "FFIELDS.h"
22     #include "DIC_ABIOTIC.h"
23    
24     C == Routine arguments ==
25     INTEGER myIter, myThid
26     _RL myTime
27     _RL PTR_ALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr)
28     _RL GALK(1-OLx:sNx+OLx,1-OLy:sNy+OLy)
29     INTEGER iMin,iMax,jMin,jMax, bi, bj
30    
31     #ifdef ALLOW_PTRACERS
32     #ifdef DIC_BIOTIC
33     C == Local variables ==
34     INTEGER I,J
35    
36     DO j=1-OLy,sNy+OLy
37     DO i=1-OLx,sNx+OLx
38     IF (maskC(i,j,1,bi,bj).NE.0.) THEN
39     c calculate virtual flux
40     c EminusPforV = dS/dt*(1/Sglob)
41     C NOTE: Be very careful with signs here!
42     C Positive EminusPforV => loss of water to atmos and increase
43     C in salinity. Thus, also increase in other surface tracers
44     C (i.e. positive virtual flux into surface layer)
45     cQQ GALK(i,j)=gsm_ALK*ftotflux(i,j,bi,bj)/gsm_S
46     GALK(i,j)=gsm_ALK*surfaceTendencyS(i,j,bi,bj)/gsm_S
47     c OR
48     c let virtual flux be zero
49     c GALK(i,j)=0.d0
50     c
51     ELSE
52     GALK(i,j)=0. _d 0
53     ENDIF
54     ENDDO
55     ENDDO
56    
57     #endif
58     #endif
59     RETURN
60     END

  ViewVC Help
Powered by ViewVC 1.1.22