/[MITgcm]/MITgcm/pkg/autodiff/adcommon.h
ViewVC logotype

Contents of /MITgcm/pkg/autodiff/adcommon.h

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


Revision 1.26 - (show annotations) (download)
Thu Feb 24 07:30:42 2011 UTC (13 years, 3 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62w, checkpoint62y, checkpoint62x
Changes since 1.25: +8 -1 lines
File MIME type: text/plain
Add adjoint output for DYNVARS_DIAG

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/adcommon.h,v 1.25 2010/11/10 22:11:17 gforget Exp $
2 C $Name: $
3
4 C-- These common blocks are extracted from the
5 C-- automatically created tangent linear code.
6 C-- You need to make sure that they are up-to-date
7 C-- (i.e. in right order), and customize them
8 C-- accordingly.
9 C--
10 C-- heimbach@mit.edu 11-Jan-2001
11
12 #ifdef ALLOW_AUTODIFF_MONITOR
13
14 #include "PACKAGES_CONFIG.h"
15
16 #ifdef ALLOW_EXF
17 # include "EXF_OPTIONS.h"
18 #endif
19 #ifdef ALLOW_SEAICE
20 # include "SEAICE_OPTIONS.h"
21 #endif
22
23
24 common /addynvars_r/
25 & adetan,
26 & aduvel, advvel, adwvel,
27 & adtheta, adsalt,
28 & adgu, adgv, adgt, adgs,
29 #ifdef ALLOW_ADAMSBASHFORTH_3
30 & adgunm, adgvnm, adgtnm, adgsnm
31 #else
32 & adgunm1, adgvnm1, adgtnm1, adgsnm1
33 #endif
34 _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
35 _RL adgs(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
36 _RL adgt(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
37 _RL adgu(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
38 _RL adgv(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
39 _RL adsalt(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
40 _RL adtheta(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
41 _RL aduvel(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
42 _RL advvel(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
43 _RL adwvel(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
44 #ifdef ALLOW_ADAMSBASHFORTH_3
45 _RL adgtnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
46 _RL adgsnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
47 _RL adgunm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
48 _RL adgvnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
49 #else
50 _RL adgtnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
51 _RL adgsnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
52 _RL adgunm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
53 _RL adgvnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
54 #endif
55
56 common /addynvars_r_2/
57 & adetah
58 _RL adetah(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
59
60 #ifdef ALLOW_AUTODIFF_MONITOR_DIAG
61 common /addynvars_diag/
62 & adtotphihyd, adrhoinsitu
63 _RL adrhoinsitu(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
64 _RL adtotphihyd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
65 #endif
66
67 #ifdef ALLOW_CD_CODE
68 common /addynvars_cd/
69 & aduveld, advveld,
70 & adetanm1,
71 & adunm1, advnm1
72 _RL aduveld(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
73 _RL advveld(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
74 _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
75 _RL adunm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
76 _RL advnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
77 #endif
78
79 COMMON /adffields_fu/ adfu
80 COMMON /adffields_fv/ adfv
81 COMMON /adffields_Qnet/ adQnet
82 COMMON /adffields_Qsw/ adQsw
83 COMMON /adffields_dQdT/ addQdT
84 COMMON /adffields_EmPmR/ adEmPmR
85 COMMON /adffields_saltFlux/ adsaltFlux
86 COMMON /adffields_SST/ adSST
87 COMMON /adffields_SSS/ adSSS
88 COMMON /adffields_lambdaThetaClimRelax/ adlambdaThetaClimRelax
89 COMMON /adffields_lambdaSaltClimRelax/ adlambdaSaltClimRelax
90 #ifdef ATMOSPHERIC_LOADING
91 COMMON /adffields_pload/ adpload
92 COMMON /adffields_sIceLoad/ adsIceLoad
93 #endif
94
95 _RS adfu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
96 _RS adfv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
97 _RS adQnet (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
98 _RS adQsw (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
99 _RS addQdT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
100 _RS adEmPmR (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
101 _RS adsaltFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
102 _RS adSST (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
103 _RS adSSS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
104 _RS adlambdaThetaClimRelax
105 & (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
106 _RS adlambdaSaltClimRelax
107 & (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
108 #ifdef ATMOSPHERIC_LOADING
109 _RS adpload (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
110 _RS adsIceLoad (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
111 #endif
112
113 #ifdef ALLOW_DIFFKR_CONTROL
114 COMMON /ADDYNVARS_DIFFKR/
115 & addiffKr
116 _RL addiffKr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
117 #endif
118 #ifdef ALLOW_KAPGM_CONTROL
119 COMMON /ADDYNVARS_KAPGM/
120 & adkapgm
121 _RL adkapgm (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
122 #endif
123 #ifdef ALLOW_KAPREDI_CONTROL
124 COMMON /ADDYNVARS_KAPREDI/
125 & adkapredi
126 _RL adkapredi (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
127 #endif
128 #ifdef ALLOW_BOTTOMDRAG_CONTROL
129 COMMON /ADDYNVARS_BOTTOMDRAG/
130 & adbottomdragfld
131 _RL adbottomdragfld (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
132 #endif
133 #ifdef ALLOW_EDDYPSI_CONTROL
134 double precision adeddypsix(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,
135 $nsy)
136 double precision adeddypsiy(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,
137 $nsy)
138 common /adeddypsiffields/ adeddypsix, adeddypsiy
139
140 #endif
141
142 #ifdef ALLOW_EXF
143 _RL adhflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
144 _RL adsflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
145 common /adexf_hsflux_r/ adhflux, adsflux
146 _RL adustress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
147 _RL advstress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
148 common /adexf_stress_r/ adustress, advstress
149 # ifdef ALLOW_ATM_TEMP
150 _RL adatemp (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
151 _RL adaqh (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
152 _RL adlwflux (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
153 _RL adprecip (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
154 common /adexf_atm_temp_r/ adatemp, adaqh, adlwflux, adprecip
155 # endif
156 # ifdef ALLOW_ATM_WIND
157 _RL aduwind (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
158 _RL advwind (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
159 common /adexf_atm_wind_r/ aduwind, advwind
160 # endif
161 # ifdef ALLOW_DOWNWARD_RADIATION
162 _RL adswdown (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
163 _RL adlwdown (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
164 common /adexf_rad_down_r/
165 & adswdown, adlwdown
166 # endif
167 # ifdef ALLOW_CLIMSST_RELAXATION
168 _RL adclimsst(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
169 common /adexf_clim_sst_r/ adclimsst
170 # endif
171 # ifdef ALLOW_CLIMSSS_RELAXATION
172 _RL adclimsss(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
173 common /adexf_clim_sss_r/ adclimsss
174 # endif
175 #endif
176
177 #ifdef ALLOW_SEAICE
178 _RL adarea (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
179 _RL adheff (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
180 _RL adhsnow (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
181 _RL aduice (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
182 _RL advice (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
183 common /adseaice_dynvars_1/
184 & adarea, adheff, adhsnow, aduice, advice
185 #endif
186
187 #ifdef ALLOW_GGL90
188 _RL adggl90tke (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
189 _RL adggl90diffkr (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
190 common /adggl90_fields/
191 & adggl90tke, adggl90diffkr
192 #endif
193
194 #ifdef ALLOW_DEPTH_CONTROL
195 _RL adr_low_control(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
196 _RL adhfacc(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
197 _RL adhfacs(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
198 _RL adhfacw(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
199 _RL adrecip_hfacc(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
200 _RL adrecip_hfacs(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
201 _RL adrecip_hfacw(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
202 common /adgrid_r/ adr_low_control,
203 & adrecip_hfacc, adrecip_hfacw, adrecip_hfacs
204 common /adgrid_r_c/ adhfacc
205 common /adgrid_r_s/ adhfacs
206 common /adgrid_r_w/ adhfacw
207 #endif /* ALLOW_DEPTH_CONTROL */
208
209 #endif /* ALLOW_AUTODIFF_MONITOR */

  ViewVC Help
Powered by ViewVC 1.1.22