1 |
jmc |
1.8 |
C $Header: /u/gcmpack/MITgcm/pkg/autodiff/AUTODIFF_OPTIONS.h,v 1.7 2012/08/10 17:37:20 jmc Exp $ |
2 |
edhill |
1.2 |
C $Name: $ |
3 |
|
|
|
4 |
|
|
CBOP |
5 |
jmc |
1.4 |
C !ROUTINE: AUTODIFF_OPTIONS.h |
6 |
|
|
C !INTERFACE: |
7 |
|
|
C #include "AUTODIFF_OPTIONS.h" |
8 |
|
|
|
9 |
|
|
C !DESCRIPTION: |
10 |
|
|
C *==================================================================* |
11 |
jmc |
1.7 |
C | CPP options file for AutoDiff (autodiff) package: |
12 |
jmc |
1.4 |
C | Control which optional features to compile in this package code. |
13 |
|
|
C *==================================================================* |
14 |
edhill |
1.2 |
CEOP |
15 |
|
|
|
16 |
|
|
#ifndef AUTODIFF_OPTIONS_H |
17 |
|
|
#define AUTODIFF_OPTIONS_H |
18 |
|
|
#include "PACKAGES_CONFIG.h" |
19 |
|
|
#include "CPP_OPTIONS.h" |
20 |
|
|
|
21 |
jmc |
1.5 |
#ifdef ALLOW_AUTODIFF |
22 |
jmc |
1.7 |
#ifdef ECCO_CPPOPTIONS_H |
23 |
jmc |
1.4 |
|
24 |
jmc |
1.7 |
C-- When multi-package option-file ECCO_CPPOPTIONS.h is used (directly included |
25 |
|
|
C in CPP_OPTIONS.h), this option file is left empty since all options that |
26 |
|
|
C are specific to this package are assumed to be set in ECCO_CPPOPTIONS.h |
27 |
|
|
|
28 |
|
|
#else /* ndef ECCO_CPPOPTIONS_H */ |
29 |
|
|
C ================================================================== |
30 |
|
|
C-- Package-specific Options & Macros go here |
31 |
|
|
|
32 |
|
|
C o Include/exclude code in order to be able to automatically |
33 |
|
|
C differentiate the MITgcmUV by using the Tangent Linear and |
34 |
|
|
C Adjoint Model Compiler (TAMC). |
35 |
|
|
#define ALLOW_AUTODIFF_TAMC |
36 |
|
|
|
37 |
|
|
C >>> Checkpointing as handled by TAMC |
38 |
|
|
#define ALLOW_TAMC_CHECKPOINTING |
39 |
|
|
|
40 |
|
|
C >>> Extract adjoint state |
41 |
|
|
#define ALLOW_AUTODIFF_MONITOR |
42 |
|
|
|
43 |
|
|
C >>> DO 2-level checkpointing instead of 3-level |
44 |
|
|
c#undef AUTODIFF_2_LEVEL_CHECKPOINT |
45 |
|
|
|
46 |
|
|
C extend to 4-level checkpointing |
47 |
|
|
c#undef AUTODIFF_4_LEVEL_CHECKPOINT |
48 |
|
|
|
49 |
|
|
C o use divided adjoint to split adjoint computations |
50 |
|
|
#undef ALLOW_DIVIDED_ADJOINT |
51 |
|
|
|
52 |
|
|
C o Enable some temporary constructs for OpenAD |
53 |
|
|
#undef ALLOW_AUTODIFF_OPENAD |
54 |
|
|
|
55 |
jmc |
1.8 |
#undef ALLOW_AUTODIFF_WHTAPEIO |
56 |
|
|
#undef ALLOW_PACKUNPACK_METHOD2 |
57 |
|
|
#undef AUTODIFF_USE_OLDSTORE_3D |
58 |
|
|
#undef AUTODIFF_USE_OLDSTORE_2D |
59 |
|
|
|
60 |
jmc |
1.7 |
C ================================================================== |
61 |
|
|
#endif /* ndef ECCO_CPPOPTIONS_H */ |
62 |
jmc |
1.4 |
#endif /* ALLOW_AUTODIFF */ |
63 |
|
|
#endif /* AUTODIFF_OPTIONS_H */ |