/[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.4 by heimbach, Thu Mar 6 23:47:46 2003 UTC revision 1.26 by heimbach, Thu Feb 24 07:30:42 2011 UTC
# Line 1  Line 1 
1    C $Header$
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  #ifdef ALLOW_AUTODIFF_MONITOR
13    
14     These lines are uncommented on purpose to provoke  #include "PACKAGES_CONFIG.h"
15     a model crash. You need to customize this header file  
16     to your problem.  #ifdef ALLOW_EXF
17     These common blocks are extracted from the  # include "EXF_OPTIONS.h"
18     automatically created tangent linear code.  #endif
19     You need to make sure that they are up-to-date  #ifdef ALLOW_SEAICE
20     (i.e. in right order), and customize them  # include "SEAICE_OPTIONS.h"
21     accordingly.  #endif
22    
    heimbach@mit.edu 11-Jan-2001  
23    
24        common /addynvars_r/        common /addynvars_r/
25       &                     adetan,       &                     adetan,
26       &                     aduvel, advvel, adwvel,       &                     aduvel, advvel, adwvel,
27       &                     adtheta, adsalt,       &                     adtheta, adsalt,
28       &                     adgu, adgv, adgt, adgs,       &                     adgu, adgv, adgt, adgs,
29    #ifdef ALLOW_ADAMSBASHFORTH_3
30         &                     adgunm, adgvnm, adgtnm, adgsnm
31    #else
32       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1
33    #endif
34        _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _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)        _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)  
36        _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)  
37        _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)  
38        _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)  
39        _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)
40        _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)
41        _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)
42        _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)
43        _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)
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        common /addynvars_cd/  #ifdef ALLOW_CD_CODE
68          common /addynvars_cd/
69       &                      aduveld, advveld,       &                      aduveld, advveld,
70       &                       adetanm1,       &                       adetanm1,
71       &                      adunm1, advnm1,       &                      adunm1, advnm1
      &                      adgucd, adgvcd  
72        _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)
73        _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)
74        _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _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)        _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)        _RL advnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
77        _RL adgucd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  #endif
       _RL adgvcd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
78    
79  cph      common /adtr1_r/        COMMON /adffields_fu/ adfu
80  cph     &                 adtr1, adgtr1, adgtr1nm1        COMMON /adffields_fv/ adfv
81  cph      _RL adgtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        COMMON /adffields_Qnet/ adQnet
82  cph      _RL adgtr1nm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        COMMON /adffields_Qsw/ adQsw
83  cph      _RL adtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        COMMON /adffields_dQdT/ addQdT
84          COMMON /adffields_EmPmR/ adEmPmR
85        common /adffields/        COMMON /adffields_saltFlux/ adsaltFlux
86       &                   adfu, adfv        COMMON /adffields_SST/ adSST
87       &                 , adqnet, adempmr        COMMON /adffields_SSS/ adSSS
88  cph     &                 , adsst, adsss        COMMON /adffields_lambdaThetaClimRelax/ adlambdaThetaClimRelax
89        _RL adfu(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        COMMON /adffields_lambdaSaltClimRelax/ adlambdaSaltClimRelax
90        _RL adfv(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  #ifdef ATMOSPHERIC_LOADING
91        _RL adqnet(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        COMMON /adffields_pload/ adpload
92        _RL adempmr(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        COMMON /adffields_sIceLoad/ adsIceLoad
93  cph      _RL adsst(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  #endif
94  cph      _RL adsss(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  
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 */  #endif /* ALLOW_AUTODIFF_MONITOR */

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.26

  ViewVC Help
Powered by ViewVC 1.1.22