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

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

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


Revision 1.3 - (show annotations) (download)
Thu Dec 4 22:40:16 2003 UTC (20 years, 5 months ago) by stephd
Branch: MAIN
CVS Tags: checkpoint52e_pre, checkpoint52e_post, hrcube_1, checkpoint52d_pre, checkpoint52d_post, checkpoint52f_post, checkpoint52i_post, checkpoint52i_pre, checkpoint52h_pre, checkpoint52f_pre, hrcube_2
Branch point for: netcdf-sm0
Changes since 1.2: +7 -5 lines
o fixes to make adjoint work

1 #include "CPP_OPTIONS.h"
2 #include "PTRACERS_OPTIONS.h"
3 #include "GCHEM_OPTIONS.h"
4
5 C !INTERFACE: ==========================================================
6 SUBROUTINE GCHEM_FORCING_SEP(myTime,myIter, myThid )
7
8 IMPLICIT NONE
9 #include "SIZE.h"
10 #include "GRID.h"
11 #include "DYNVARS.h"
12 #include "EEPARAMS.h"
13 #include "PARAMS.h"
14 #ifdef ALLOW_PTRACERS
15 #include "PTRACERS.h"
16 #endif
17 #ifdef DIC_BIOTIC
18 #include "DIC_BIOTIC.h"
19 #include "DIC_ABIOTIC.h"
20 #endif
21
22 C !INPUT PARAMETERS: ===================================================
23 C myThid :: thread number
24 INTEGER myThid, myIter
25 _RL myTime
26 INTEGER bi,bj,imin,imax,jmin,jmax
27 INTEGER i,j
28 INTEGER niter
29
30 #ifdef ALLOW_PTRACERS
31 #ifdef ALLOW_GCHEM
32
33 _BARRIER
34 _BEGIN_MASTER( mythid )
35
36 ccccccccccccccccccccccccc
37 c global calculations c
38 ccccccccccccccccccccccccc
39 #ifdef DIC_BIOTIC
40 c find global surface averages
41 gsm_s = 0.
42 gsm_dic = 0.
43 gsm_alk = 0.
44 call tracer_meanarea(myThid,salt, 1,gsm_s)
45 call tracer_meanarea(myThid,
46 & ptracer(1-Olx,1-Oly,1,1,1,1), 1, gsm_dic)
47 print*,'mean surface dic', gsm_dic,gsm_s
48 call tracer_meanarea(myThid,
49 & ptracer(1-Olx,1-Oly,1,1,1,2), 1, gsm_alk)
50 #endif
51 ccccccccccccccccccccccccccccccccccccccccccc
52
53 _END_MASTER( mythid )
54 _BARRIER
55
56
57 ccccccccccccccccccccccccc
58 c chemical forcing c
59 ccccccccccccccccccccccccc
60 C$taf loop = parallel
61 DO bj=myByLo(myThid),myByHi(myThid)
62 C$taf loop = parallel
63 DO bi=myBxLo(myThid),myBxHi(myThid)
64
65 jMin=1-OLy
66 jMax=sNy+OLy
67 iMin=1-OLx
68 iMax=sNx+OLx
69 c
70 ccccccccccccccccccccccccccc DIC cccccccccccccccccccccccccccccccc
71 c
72 #ifdef DIC_BIOTIC
73 #ifdef ALLOW_FE
74 call DIC_BIOTIC_Forcing( Ptracer(1-Olx,1-Oly,1,bi,bj,1),
75 & Ptracer(1-Olx,1-Oly,1,bi,bj,2),
76 & Ptracer(1-Olx,1-Oly,1,bi,bj,3),
77 & Ptracer(1-Olx,1-Oly,1,bi,bj,4),
78 & Ptracer(1-Olx,1-Oly,1,bi,bj,5),
79 & Ptracer(1-Olx,1-Oly,1,bi,bj,6),
80 & bi,bj,imin,imax,jmin,jmax,
81 & myIter,myTime,myThid)
82 #else
83 call DIC_BIOTIC_Forcing( Ptracer(1-Olx,1-Oly,1,bi,bj,1),
84 & Ptracer(1-Olx,1-Oly,1,bi,bj,2),
85 & Ptracer(1-Olx,1-Oly,1,bi,bj,3),
86 & Ptracer(1-Olx,1-Oly,1,bi,bj,4),
87 & Ptracer(1-Olx,1-Oly,1,bi,bj,5),
88 & bi,bj,imin,imax,jmin,jmax,
89 & myIter,myTime,myThid)
90 #endif
91 #endif
92 cccccccccccccccccccccccccc END DIC cccccccccccccccccccccccccccccccccc
93
94 #ifdef PTRACERS_SEPARATE_FORCING
95 C time averaging directly, here otherwise in the_correction_step
96 CALL PTRACERS_STATVARS(myTime, myIter, bi, bj, myThid)
97 #endif /* PTRACERS_SEPARATE_FORCING */
98
99 c
100 ENDDO
101 ENDDO
102
103 #endif /* ALLOW_GCHEM */
104 #endif /* ALLOW_PTRACERS */
105
106 RETURN
107 END

  ViewVC Help
Powered by ViewVC 1.1.22