/[MITgcm]/MITgcm/pkg/gchem/gchem_forcing_sep.F
ViewVC logotype

Annotation of /MITgcm/pkg/gchem/gchem_forcing_sep.F

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


Revision 1.13 - (hide annotations) (download)
Tue Dec 13 21:06:42 2005 UTC (18 years, 5 months ago) by stephd
Branch: MAIN
CVS Tags: checkpoint58l_post, checkpoint58e_post, checkpoint58h_post, checkpoint58j_post, checkpoint58, checkpoint58f_post, checkpoint58d_post, checkpoint58c_post, checkpoint58a_post, checkpoint58i_post, checkpoint58g_post, checkpoint57z_post, checkpoint58k_post, checkpoint58b_post, checkpoint58m_post
Changes since 1.12: +5 -9 lines
o undoing last change... imin, imax, jmin, jmax should not include
  overlap points.

1 stephd 1.13 C $Header: /u/gcmpack/MITgcm/pkg/gchem/gchem_forcing_sep.F,v 1.12 2005/12/12 19:08:01 stephd Exp $
2 jmc 1.5 C $Name: $
3    
4 stephd 1.1 #include "GCHEM_OPTIONS.h"
5    
6 stephd 1.4 CBOP
7 mlosch 1.9 C !ROUTINE: GCHEM_FORCING_SEP
8 stephd 1.1 C !INTERFACE: ==========================================================
9     SUBROUTINE GCHEM_FORCING_SEP(myTime,myIter, myThid )
10    
11 stephd 1.4 C !DESCRIPTION:
12 mlosch 1.9 C calls subroutine that will update passive tracers values
13     C with a separate timestep. Since GCHEM_FORCING_SEP is now
14     C called before DO_FIELDS_BLOCKING_EXCHANGES, the passive
15     C tracer values in the halo regions are not up to date and
16     C must not be used.
17 stephd 1.4
18     C !USES: ===============================================================
19 stephd 1.1 IMPLICIT NONE
20     #include "SIZE.h"
21     #include "GRID.h"
22     #include "DYNVARS.h"
23     #include "EEPARAMS.h"
24     #include "PARAMS.h"
25 jmc 1.5 #include "PTRACERS_SIZE.h"
26 stephd 1.1 #include "PTRACERS.h"
27 stephd 1.6 #ifdef ALLOW_DIC
28 stephd 1.1 #include "DIC_BIOTIC.h"
29     #include "DIC_ABIOTIC.h"
30 mlosch 1.9 #endif /* ALLOW_DIC */
31 stephd 1.1
32     C !INPUT PARAMETERS: ===================================================
33     C myThid :: thread number
34     INTEGER myThid, myIter
35     _RL myTime
36 stephd 1.4
37 stephd 1.6 c!LOCAL VARIABLES: ====================================================
38 stephd 1.4 C i,j :: loop indices
39     C bi,bj :: tile indices
40     C k :: vertical level
41 stephd 1.1 INTEGER bi,bj,imin,imax,jmin,jmax
42     INTEGER i,j
43     INTEGER niter
44 stephd 1.4 CEOP
45 stephd 1.1
46     #ifdef ALLOW_GCHEM
47 mlosch 1.10 #ifdef GCHEM_SEPARATE_FORCING
48 stephd 1.1
49 stephd 1.3 _BARRIER
50     _BEGIN_MASTER( mythid )
51 stephd 1.1
52     ccccccccccccccccccccccccc
53     c global calculations c
54     ccccccccccccccccccccccccc
55 stephd 1.11 #ifdef ALLOW_DIC
56 stephd 1.1 c find global surface averages
57 stephd 1.3 gsm_s = 0.
58     gsm_dic = 0.
59     gsm_alk = 0.
60 stephd 1.1 call tracer_meanarea(myThid,salt, 1,gsm_s)
61     call tracer_meanarea(myThid,
62     & ptracer(1-Olx,1-Oly,1,1,1,1), 1, gsm_dic)
63     print*,'mean surface dic', gsm_dic,gsm_s
64     call tracer_meanarea(myThid,
65     & ptracer(1-Olx,1-Oly,1,1,1,2), 1, gsm_alk)
66     #endif
67     ccccccccccccccccccccccccccccccccccccccccccc
68    
69     _END_MASTER( mythid )
70     _BARRIER
71    
72    
73     ccccccccccccccccccccccccc
74     c chemical forcing c
75     ccccccccccccccccccccccccc
76 stephd 1.3 C$taf loop = parallel
77 stephd 1.1 DO bj=myByLo(myThid),myByHi(myThid)
78 stephd 1.3 C$taf loop = parallel
79 stephd 1.1 DO bi=myBxLo(myThid),myBxHi(myThid)
80    
81 stephd 1.13 jMin=1
82     jMax=sNy
83     iMin=1
84     iMax=sNx
85 stephd 1.1 c
86     ccccccccccccccccccccccccccc DIC cccccccccccccccccccccccccccccccc
87     c
88 stephd 1.11 #ifdef ALLOW_DIC
89 stephd 1.1 #ifdef ALLOW_FE
90     call DIC_BIOTIC_Forcing( Ptracer(1-Olx,1-Oly,1,bi,bj,1),
91     & Ptracer(1-Olx,1-Oly,1,bi,bj,2),
92     & Ptracer(1-Olx,1-Oly,1,bi,bj,3),
93     & Ptracer(1-Olx,1-Oly,1,bi,bj,4),
94     & Ptracer(1-Olx,1-Oly,1,bi,bj,5),
95     & Ptracer(1-Olx,1-Oly,1,bi,bj,6),
96     & bi,bj,imin,imax,jmin,jmax,
97     & myIter,myTime,myThid)
98     #else
99     call DIC_BIOTIC_Forcing( Ptracer(1-Olx,1-Oly,1,bi,bj,1),
100     & Ptracer(1-Olx,1-Oly,1,bi,bj,2),
101     & Ptracer(1-Olx,1-Oly,1,bi,bj,3),
102     & Ptracer(1-Olx,1-Oly,1,bi,bj,4),
103     & Ptracer(1-Olx,1-Oly,1,bi,bj,5),
104     & bi,bj,imin,imax,jmin,jmax,
105     & myIter,myTime,myThid)
106     #endif
107     #endif
108     cccccccccccccccccccccccccc END DIC cccccccccccccccccccccccccccccccccc
109 stephd 1.2
110 stephd 1.1 c
111     ENDDO
112     ENDDO
113    
114 mlosch 1.10 #endif /* GCHEM_SEPARATE_FORCING */
115 stephd 1.1 #endif /* ALLOW_GCHEM */
116    
117     RETURN
118     END

  ViewVC Help
Powered by ViewVC 1.1.22