/[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.35 by atn, Sun Oct 25 21:04:54 2015 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 accordingly.
8    C--
9    C--   heimbach@mit.edu 11-Jan-2001
10    
11        common /addynvars_r/  #ifdef ALLOW_AUTODIFF_MONITOR
12    
13          common /addynvars_r/
14       &                     adetan,       &                     adetan,
15       &                     aduvel, advvel, adwvel,       &                     aduvel, advvel, adwvel,
16       &                     adtheta, adsalt,       &                     adtheta, adsalt,
17       &                     adgu, adgv, adgt, adgs,       &                     adgu, adgv, adgt, adgs,
18    #ifdef ALLOW_ADAMSBASHFORTH_3
19         &                     adgunm, adgvnm, adgtnm, adgsnm
20    #else
21       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1
22    #endif
23        _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
24        _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)  
25        _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)  
26        _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)  
27        _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)  
28        _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)
29        _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)
30        _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)
31        _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)
32        _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)
33    #ifdef ALLOW_ADAMSBASHFORTH_3
34          _RL adgtnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
35          _RL adgsnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
36          _RL adgunm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
37          _RL adgvnm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy,2)
38    #else
39          _RL adgtnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
40          _RL adgsnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
41          _RL adgunm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
42          _RL adgvnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
43    #endif
44    
45          common /addynvars_r_2/
46         &                     adetah
47          _RL adetah(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
48    
49        common /addynvars_cd/  #ifdef ALLOW_AUTODIFF_MONITOR_DIAG
50          common /addynvars_diag/
51         &                     adtotphihyd, adrhoinsitu
52          _RL adrhoinsitu(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
53          _RL adtotphihyd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
54    #endif
55    
56    #ifdef ALLOW_CD_CODE
57          common /addynvars_cd/
58       &                      aduveld, advveld,       &                      aduveld, advveld,
59       &                       adetanm1,       &                       adetanm1,
60       &                      adunm1, advnm1,       &                      adunm1, advnm1
      &                      adgucd, adgvcd  
61        _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)
62        _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)
63        _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
64        _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)
65        _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)
66        _RL adgucd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  #endif
67        _RL adgvcd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
68          COMMON /adffields_fu/ adfu
69          COMMON /adffields_fv/ adfv
70          COMMON /adffields_Qnet/ adQnet
71          COMMON /adffields_Qsw/ adQsw
72          COMMON /adffields_EmPmR/ adEmPmR
73          COMMON /adffields_saltFlux/ adsaltFlux
74          COMMON /adffields_SST/ adSST
75          COMMON /adffields_SSS/ adSSS
76          COMMON /adffields_lambdaThetaClimRelax/ adlambdaThetaClimRelax
77          COMMON /adffields_lambdaSaltClimRelax/ adlambdaSaltClimRelax
78    #ifdef ATMOSPHERIC_LOADING
79          COMMON /adffields_pload/ adpload
80          COMMON /adffields_sIceLoad/ adsIceLoad
81    #endif
82    
83          _RS  adfu       (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
84          _RS  adfv       (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
85          _RS  adQnet     (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
86          _RS  adQsw      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
87          _RS  adEmPmR    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
88          _RS  adsaltFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
89          _RS  adSST      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
90          _RS  adSSS      (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
91          _RS  adlambdaThetaClimRelax
92         &    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
93          _RS  adlambdaSaltClimRelax
94         &    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
95    #ifdef ATMOSPHERIC_LOADING
96          _RS  adpload    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
97          _RS  adsIceLoad (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
98    #endif
99    
100    #ifdef ALLOW_DIFFKR_CONTROL
101          COMMON /ADDYNVARS_DIFFKR/
102         &                       addiffKr
103          _RL  addiffKr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
104    #endif
105    #ifdef ALLOW_KAPGM_CONTROL
106          COMMON /ADCTRL_FIELDS_KAPGM/
107         &                       adkapgm
108          _RL  adkapgm (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
109    #endif
110    #ifdef ALLOW_KAPREDI_CONTROL
111          COMMON /ADCTRL_FIELDS_KAPREDI/
112         &                       adkapredi
113          _RL  adkapredi (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
114    #endif
115    #ifdef ALLOW_BOTTOMDRAG_CONTROL
116          COMMON /ADCTRL_FIELDS_BOTTOMDRAG/
117         &                adbottomdragfld
118          _RL  adbottomdragfld (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
119    #endif
120    #ifdef ALLOW_EDDYPSI_CONTROL
121          _RS adEddyPsiX(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
122          _RS adEddyPsiY(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
123          common /adeddypsiffields/ adeddypsix, adeddypsiy
124    #endif
125    
126    #ifdef ALLOW_EXF
127    
128          _RL adhflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
129          _RL adsflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
130          common /adexf_hsflux_r/ adhflux, adsflux
131    
132          _RL adustress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
133          _RL advstress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
134          common /adexf_stress_r/ adustress, advstress
135    
136          _RL adwspeed(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
137          common /adexf_wspeed_r/ adwspeed
138    
139    # ifdef ALLOW_RUNOFF
140          _RL adrunoff    (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
141          common /adexf_runoff_r/ adrunoff
142    # endif
143    
144    # ifdef ALLOW_ATM_TEMP
145          _RL adatemp     (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
146          _RL adaqh       (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
147          _RL adlwflux    (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
148          _RL adprecip    (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
149          common /adexf_atm_temp_r/ adatemp, adaqh, adlwflux,
150         & adprecip
151    #  ifdef SHORTWAVE_HEATING
152          _RL adswflux    (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
153          common /adexf_swflux_r/ adswflux
154    #  endif
155    # endif
156    
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    
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    
176    #endif /* ALLOW_EXF */
177    
178    #ifdef ALLOW_SEAICE
179          _RL adarea  (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
180          _RL adheff  (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
181          _RL adhsnow (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
182          _RL aduice  (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
183          _RL advice  (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
184          common /adseaice_dynvars_1/
185         &     adarea, adheff, adhsnow, aduice, advice
186    # ifdef SEAICE_VARIABLE_SALINITY
187          _RL adhsalt (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
188          common /seaice_salinity_r/
189         &     adhsalt
190    # endif
191    #endif /* ALLOW_SEAICE */
192    
193    #ifdef ALLOW_GGL90
194          _RL adggl90tke     (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
195          _RL adggl90diffkr  (1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
196          common /adggl90_fields/
197         &     adggl90tke, adggl90diffkr
198    #endif
199    
200    #ifdef ALLOW_DEPTH_CONTROL
201          _RL adr_low_control(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
202          _RL adhfacc(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
203          _RL adhfacs(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
204          _RL adhfacw(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
205          _RL adrecip_hfacc(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
206          _RL adrecip_hfacs(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
207          _RL adrecip_hfacw(1-olx:snx+olx,1-oly:sny+oly,1:nr,nsx,nsy)
208          common /adgrid_r/ adr_low_control,
209         &                  adrecip_hfacc, adrecip_hfacw, adrecip_hfacs
210          common /adgrid_r_c/ adhfacc
211          common /adgrid_r_s/ adhfacs
212          common /adgrid_r_w/ adhfacw
213    #endif /* ALLOW_DEPTH_CONTROL */
214    
215  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.35

  ViewVC Help
Powered by ViewVC 1.1.22