1 |
|
These lines are uncommented on purpose to provoke |
2 |
|
a model crash. You need to customize this header file |
3 |
|
to your problem. |
4 |
|
These common blocks are extracted from the |
5 |
|
automatically created tangent linear code. |
6 |
|
You need to make sure that they are up-to-date |
7 |
|
(i.e. in right order), and customize them |
8 |
|
accordingly. |
9 |
|
|
10 |
CBOP |
heimbach@mit.edu 11-Jan-2001 |
|
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. |
|
11 |
|
|
12 |
common /addynvars_r/ |
common /addynvars_r/ |
13 |
& adetan, adetanm1, |
& adetan, |
14 |
& aduvel, advvel, adwvel, |
& aduvel, advvel, adwvel, |
15 |
& adtheta, adsalt, |
& adtheta, adsalt, |
16 |
& adgu, adgv, adgt, adgs, |
& adgu, adgv, adgt, adgs, |
17 |
& adgunm1, adgvnm1, adgtnm1, adgsnm1 |
& adgunm1, adgvnm1, adgtnm1, adgsnm1 |
18 |
_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) |
|
19 |
_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) |
20 |
_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) |
21 |
_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) |
32 |
|
|
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 |
|
|
46 |
|
cph common /adtr1_r/ |
47 |
|
cph & adtr1, adgtr1, adgtr1nm1 |
48 |
|
cph _RL adgtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy) |
49 |
|
cph _RL adgtr1nm1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy) |
50 |
|
cph _RL adtr1(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy) |
51 |
|
|
52 |
common /adffields/ |
common /adffields/ |
53 |
& adfu, adfv, adqnet, adempmr, adsst, adsss |
& adfu, adfv |
54 |
|
& , adqnet, adempmr |
55 |
|
cph & , adsst, adsss |
56 |
_RL adfu(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
_RL adfu(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
57 |
_RL adfv(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
_RL adfv(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
58 |
_RL adqnet(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
_RL adqnet(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
59 |
_RL adempmr(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
_RL adempmr(1-olx:snx+olx,1-oly:sny+oly,nsx,nsy) |
60 |
_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) |
61 |
_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 |
|
|
|
|
|
#ifdef ALLOW_DIFFKR_CONTROL |
|
|
common /addynvars_diffkr/ |
|
|
& addiffkr |
|
|
_RL addiffkr(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy) |
|
|
#endif |
|
|
|
|
|
#ifdef ALLOW_KAPGM_CONTROL |
|
|
common /addynvars_kapgm/ |
|
|
& adkapgm |
|
|
_RL adkapgm(1-olx:snx+olx,1-oly:sny+oly,nr,nsx,nsy) |
|
|
#endif |
|
|
|
|
|
|
|
|
|
|