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

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

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

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

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.30

  ViewVC Help
Powered by ViewVC 1.1.22