/[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.2 by heimbach, Tue Nov 20 23:27:29 2001 UTC revision 1.7 by heimbach, Mon Feb 28 17:39:44 2005 UTC
# Line 1  Line 1 
1    C--   These common blocks are extracted from the
2    C--   automatically created tangent linear code.
3    C--   You need to make sure that they are up-to-date
4    C--   (i.e. in right order), and customize them
5    C--   accordingly.
6    C--
7    C--   heimbach@mit.edu 11-Jan-2001
8    
9  CBOP  #ifdef ALLOW_AUTODIFF_MONITOR
 C     !ROUTINE: adcommon.h  
 C     !INTERFACE:  
 C     include "adcommon.h "  
 C     !DESCRIPTION: \bv  
 C     *==========================================================*  
 C     | CPP_EEMACROS.h                                              
 C     *==========================================================*  
 C--   | common blocks of adjoint variables extracted from  
 C     | TAMC-/TAF- generated code for use in adjoint support;  
 C     | Make sure that adjoint common blocks below are up-to-date  
 C     | w.r.t. current adjoint code.  
 C     *==========================================================*  
 C     | CPP_EEMACROS.h                                              
 C     *==========================================================*  
 C     \ev  
 CEOP  
   
 WARNING:  
 THESE LINES ARE MEANT TO PROVOKE A COMPILER CRASH.  
 THIS IS ONLY A TEMPLATE FILE.  
 YOU NEED TO CUSTOMIZE THIS TO YOUR RESPECTIVE SETUP,  
 E.G. BY PLACING A COPY IN YOUR VERIFICATION DIRECTORY.  
 IT IS IMPORTANT THAT YOU MAKE SURE THAT THE COMMON BLOCKS  
 BELOW CORRESPOND TO THE COMMON BLOCKS IN THE AUTOMATICALLY  
 CREATED ADJOINT CODE.  
10    
11        common /addynvars_r/        common /addynvars_r/
12       &                     adetan, adetanm1,       &                     adetan,
13       &                     aduvel, advvel, adwvel,       &                     aduvel, advvel, adwvel,
14       &                     adtheta, adsalt,       &                     adtheta, adsalt,
15       &                     adgu, adgv, adgt, adgs,       &                     adgu, adgv, adgt, adgs,
16       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1       &                     adgunm1, adgvnm1, adgtnm1, adgsnm1
17        _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adetan(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
       _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  
18        _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)
19        _RL adgsnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL adgsnm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
20        _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)
# Line 48  CREATED ADJOINT CODE. Line 29  CREATED ADJOINT CODE.
29        _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)
30        _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)
31    
32    #ifdef ALLOW_CD_CODE
33        common /addynvars_cd/        common /addynvars_cd/
34       &                      aduveld, advveld,       &                      aduveld, advveld,
35         &                       adetanm1,
36       &                      adunm1, advnm1,       &                      adunm1, advnm1,
37       &                      adgucd, adgvcd       &                      adgucd, adgvcd
38        _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)
39        _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)
40          _RL adetanm1(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
41        _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)
42        _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)
43        _RL adgucd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL adgucd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
44        _RL adgvcd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL adgvcd(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)
45    #endif
46    
47        common /adffields/        common /adffields/
48       &                   adfu, adfv, adqnet, adempmr, adsst, adsss       &                   adfu, adfv
49         &                 , adqnet, adempmr
50    cph     &                 , adsst, adsss
51        _RL adfu(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adfu(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
52        _RL adfv(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adfv(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
53        _RL adqnet(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adqnet(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
54        _RL adempmr(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)        _RL adempmr(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
55        _RL adsst(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  cph      _RL adsst(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
56        _RL adsss(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)  cph      _RL adsss(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
   
 #ifdef ALLOW_TR10_CONTROL  
       common /adtr1_r/  
      &                 adtr1, adgtr1, adgtr1nm1  
       _RL adgtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
       _RL adgtr1nm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
       _RL adtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
 #endif  
57    
58  #ifdef ALLOW_DIFFKR_CONTROL  #ifdef ALLOW_DIFFKR_CONTROL
59        common /addynvars_diffkr/        COMMON /ADDYNVARS_DIFFKR/
60       &                          addiffkr       &                       addiffKr
61        _RL addiffkr(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)        _RL  addiffKr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
62  #endif  #endif
63    #if (defined (ALLOW_EDTAUX_CONTROL) || defined (ALLOW_EDTAUY_CONTROL))
64          double precision adeddytaux(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,
65         $nsy)
66          double precision adeddytauy(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,
67         $nsy)
68          common /adedtauffields/ adeddytaux, adeddytauy
69    
 #ifdef ALLOW_KAPGM_CONTROL  
       common /addynvars_kapgm/  
      &                          adkapgm  
       _RL adkapgm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy)  
70  #endif  #endif
71    
72    #ifdef ALLOW_EXF
73          _RL adhflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
74          _RL adsflux(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
75          common /adexf_hsflux_r/ adhflux, adsflux
76          _RL adustress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
77          _RL advstress(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
78          common /adexf_stress_r/ adustress, advstress
79    # ifdef ALLOW_ATEMP
80          _RL adatemp     (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
81          _RL adaqh       (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
82          _RL adlwflux    (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
83          _RL adprecip    (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
84          common /adexf_atm_temp_r/ adatemp, adaqh, adlwflux, adprecip
85    # endif
86    # ifdef ALLOW_ATM_WIND
87          _RL aduwind     (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
88          _RL advwind     (1-olx:snx+olx,1-oly:sny+oly,nsx,nsy)
89          common /adexf_atm_wind_r/ aduwind, advwind
90    # endif
91    #endif
92    
93    #endif /* ALLOW_AUTODIFF_MONITOR */

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.7

  ViewVC Help
Powered by ViewVC 1.1.22