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

Contents of /MITgcm/pkg/autodiff/tamc.h

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


Revision 1.9 - (show annotations) (download)
Thu Apr 24 21:39:57 2008 UTC (16 years ago) by gforget
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint62u, checkpoint62t, checkpoint62c, checkpoint62s, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint59q, checkpoint59r, checkpoint62b, checkpoint61f, checkpoint61n, checkpoint61q, checkpoint61e, checkpoint61g, checkpoint61d, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61z, checkpoint61x, checkpoint61y
Changes since 1.8: +2 -8 lines
File MIME type: text/plain
implementing TAF directives for gchem,cfc,dic

1 C $Header: /u/gcmpack/MITgcm/pkg/autodiff/tamc.h,v 1.8 2004/07/13 18:07:24 jmc Exp $
2 C $Name: $
3
4 #include "PACKAGES_CONFIG.h"
5
6 c ================================================================
7 c HEADER TAMC
8 c ================================================================
9 c
10 c o Header for the use of the Tangent Linear and Adjoint Model
11 c Compiler (TAMC).
12 c
13 c started: Christian Eckert eckert@mit.edu 04-Feb-1999
14 c changed: Patrick Heimbach heimbach@mit.edu 06-Jun-2000
15 c - New parameter nlevchk_0 for dimensionalising
16 c common blocks in the undef ALLOW_TAMC_CHECKPOINTING case
17 c - nhreads_chkpt was declared at the wrong place
18 c - new keys, separate for different packages
19
20 THESE LINES ARE DELIBERAELY UNCOMMENTED AS A WARNING THAT
21 THIS HEADER FILE SHOULD BE CUSTOMIZED, IN PARTICULAR THE PARAMETERS
22 nchklev_1/2/3
23 (POSSIBLY ALSO MAXPASS AND MAXCUBE IN CASE YOU ARE USING
24 PTRACERS OR CUBED SPHERE)
25 COMMENT THESE LINES, MAKE SURE ABOVE PARAMETERS ARE SET CORRECTLY
26 AND ADD THIS FILE TO YOUR SET OF CUSTOMIZED HEADERS (E.G. SIZE.h)
27
28 c ================================================================
29 c HEADER TAMC
30 c ================================================================
31
32
33 c TAMC checkpointing parameters:
34 c ==============================
35 c
36 c The checkpointing parameters have to be consistent with other model
37 c parameters and variables. This has to be checked before the model is
38 c run.
39 c
40 c nyears_chkpt - Number of calendar years affected by the assimilation
41 c experiment; nyears_chkpt has to be at least equal to
42 c the result of cal_IntYears(mythid).
43 c nmonths_chkpt - Number of months per year; nmonth_chkpt has to be at
44 c least equal to nmonthyear.
45 c ndays_chkpt - Number of days per month; nday_chkpt has to be at least
46 c equal to nmaxdaymonth.
47 c nsteps_chkpt - Number of steps per day; nsteps_chkpt has to be at
48 c least equal to cal_nStepDay(mythid)
49 c ncheck_chkpt - Number of innermost checkpoints.
50 c
51 c ngeom_chkpt - Geometry factor.
52 c nthreads_chkpt - Number of threads to be used; nth_chkpt .eq. nTx*nTy
53
54 integer nyears_chkpt
55 integer nmonths_chkpt
56 integer ndays_chkpt
57 integer ngeom_chkpt
58 integer ncheck_chkpt
59 integer nthreads_chkpt
60
61 parameter (nyears_chkpt = 1 )
62 parameter (nmonths_chkpt = 12 )
63 parameter (ndays_chkpt = 31 )
64 parameter (ngeom_chkpt = nr*nsx*nsy )
65 parameter (ncheck_chkpt = 6 )
66 parameter ( nthreads_chkpt = 1 )
67
68 #ifdef ALLOW_TAMC_CHECKPOINTING
69
70 integer nchklev_1
71 parameter( nchklev_1 = 5 )
72 integer nchklev_2
73 parameter( nchklev_2 = 2 )
74 c parameter( nchklev_2 = 150 )
75 integer nchklev_3
76 parameter( nchklev_3 = 3 )
77 c parameter( nchklev_3 = 150 )
78
79 c-- Note always check for the correct sizes of the common blocks!
80
81 #else /* ALLOW_TAMC_CHECKPOINTING undefined */
82
83 integer nchklev_0
84 parameter( nchklev_0 = 64800 )
85
86 #endif /* ALLOW_TAMC_CHECKPOINTING */
87
88 c TAMC keys:
89 c ==========
90 c
91 c The keys are used for storing and reading data of the reference
92 c trajectory.
93 c
94 c The convention used here is:
95 c ikey_<name>
96 c
97 c which means that this key is used in routine <name> for reading
98 c and writing data.
99
100 common /tamc_keys_i/
101 & ikey_dynamics,
102 & ikey_yearly,
103 & ikey_daily_1,
104 & ikey_daily_2,
105 & iloop_daily
106
107 integer ikey_dynamics
108 integer ikey_yearly
109 integer ikey_daily_1
110 integer ikey_daily_2
111 integer iloop_daily
112
113 INTEGER isbyte
114 PARAMETER( isbyte = 8 )
115 INTEGER maximpl
116 PARAMETER( maximpl = 6 )
117 #ifndef ALLOW_PTRACERS
118 INTEGER maxpass
119 PARAMETER( maxpass = 2 )
120 #endif
121 INTEGER maxcube
122 PARAMETER( maxcube = 1 )
123
124 INTEGER act0, act1, act2, act3, act4
125 INTEGER max0, max1, max2, max3
126 INTEGER iikey, kkey, passkey, igadkey,
127 & itdkey, idynkey, igmkey, ikppkey, iptrkey
128
129 c ================================================================
130 c END OF HEADER TAMC
131 c ================================================================
132
133

  ViewVC Help
Powered by ViewVC 1.1.22