1 |
jmc |
1.2 |
C $Header: /u/gcmpack/MITgcm/verification/tutorial_dic_adjoffline/code_ad/GMREDI_OPTIONS.h,v 1.1 2009/10/16 16:49:48 heimbach Exp $ |
2 |
heimbach |
1.1 |
C $Name: $ |
3 |
|
|
|
4 |
|
|
C CPP options file for GM/Redi package |
5 |
|
|
C |
6 |
|
|
C Use this file for selecting options within the GM/Redi package |
7 |
jmc |
1.2 |
|
8 |
heimbach |
1.1 |
#ifndef GMREDI_OPTIONS_H |
9 |
|
|
#define GMREDI_OPTIONS_H |
10 |
|
|
#include "PACKAGES_CONFIG.h" |
11 |
jmc |
1.2 |
#ifdef ALLOW_GMREDI |
12 |
heimbach |
1.1 |
|
13 |
|
|
#include "CPP_OPTIONS.h" |
14 |
|
|
|
15 |
|
|
C Designed to simplify the Ajoint code: |
16 |
|
|
C exclude the clipping/tapering part of the code that is not used |
17 |
|
|
#define GM_EXCLUDE_CLIPPING |
18 |
|
|
#define GM_EXCLUDE_AC02_TAP |
19 |
|
|
#define GM_EXCLUDE_FM07_TAP |
20 |
jmc |
1.2 |
#undef GM_EXCLUDE_TAPERING |
21 |
|
|
|
22 |
heimbach |
1.1 |
C This allows to use Visbeck et al formulation to compute K_GM+Redi |
23 |
jmc |
1.2 |
#undef GM_VISBECK_VARIABLE_K |
24 |
heimbach |
1.1 |
|
25 |
|
|
C This allows the leading diagonal (top two rows) to be non-unity |
26 |
|
|
C (a feature required when tapering adiabatically). |
27 |
|
|
#undef GM_NON_UNITY_DIAGONAL |
28 |
|
|
|
29 |
|
|
C Allows to use different values of K_GM and K_Redi ; also to |
30 |
|
|
C be used with the advective form (Bolus velocity) of GM |
31 |
|
|
#undef GM_EXTRA_DIAGONAL |
32 |
|
|
|
33 |
|
|
C Allows to use the advective form (Bolus velocity) of GM |
34 |
|
|
C instead of the Skew-Flux form (=default) |
35 |
|
|
#undef GM_BOLUS_ADVEC |
36 |
|
|
|
37 |
|
|
C Following option avoids specific recomputation in adjoint |
38 |
|
|
C routines of gmredi_x/y/rtransport |
39 |
jmc |
1.2 |
C It is not needed, only for tests, and very memory-consuming |
40 |
heimbach |
1.1 |
#undef GM_AUTODIFF_EXCESSIVE_STORE |
41 |
|
|
|
42 |
|
|
#endif /* ALLOW_GMREDI */ |
43 |
|
|
#endif /* GMREDI_OPTIONS_H */ |
44 |
|
|
|