1 |
adcroft |
1.1 |
% $Header: $ |
2 |
|
|
% $Name: $ |
3 |
|
|
|
4 |
|
|
{\small |
5 |
|
|
\begin{verbatim} |
6 |
|
|
************* |
7 |
|
|
the_main_loop |
8 |
|
|
************* |
9 |
|
|
| |
10 |
|
|
|--- initialise_varia |
11 |
|
|
| | |
12 |
|
|
| ... |
13 |
|
|
| |--- packages_init_varia |
14 |
|
|
| | | |
15 |
|
|
| | ... |
16 |
|
|
| | |--- #ifdef ALLOW_ADJOINT_RUN |
17 |
|
|
| | | call ctrl_map_ini |
18 |
|
|
| | | call cost_ini |
19 |
|
|
| | | #endif |
20 |
|
|
| | ... |
21 |
|
|
| | o |
22 |
|
|
| ... |
23 |
|
|
| o |
24 |
|
|
... |
25 |
|
|
|--- #ifdef ALLOW_ADJOINT_RUN |
26 |
|
|
| call ctrl_map_forcing |
27 |
|
|
| #endif |
28 |
|
|
... |
29 |
|
|
|--- #ifdef ALLOW_TAMC_CHECKPOINTING |
30 |
|
|
do ilev_3 = 1,nchklev_3 |
31 |
|
|
| do ilev_2 = 1,nchklev_2 |
32 |
|
|
| do ilev_1 = 1,nchklev_1 |
33 |
|
|
| iloop = (ilev_3-1)*nchklev_2*nchklev_1 + |
34 |
|
|
| (ilev_2-1)*nchklev_1 + ilev_1 |
35 |
|
|
| #else |
36 |
|
|
| do iloop = 1, nTimeSteps |
37 |
|
|
| #endif |
38 |
|
|
| | |
39 |
|
|
| |--- call forward_step |
40 |
|
|
| | |
41 |
|
|
| |--- #ifdef ALLOW_COST |
42 |
|
|
| | call cost_tile |
43 |
|
|
| | #endif |
44 |
|
|
| | |
45 |
|
|
| | enddo |
46 |
|
|
| o |
47 |
|
|
| |
48 |
|
|
|--- #ifdef ALLOW_COST |
49 |
|
|
| call cost_final |
50 |
|
|
| #endif |
51 |
|
|
o |
52 |
|
|
\end{verbatim} |
53 |
|
|
} |