1 |
C $Header: /u/gcmpack/MITgcm_contrib/gael/verification/global_oce_llc90/code/GMREDI_OPTIONS.h,v 1.2 2013/07/15 19:10:07 heimbach Exp $ |
2 |
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 |
|
8 |
#ifndef GMREDI_OPTIONS_H |
9 |
#define GMREDI_OPTIONS_H |
10 |
#include "PACKAGES_CONFIG.h" |
11 |
#include "CPP_OPTIONS.h" |
12 |
|
13 |
#ifdef ALLOW_GMREDI |
14 |
C Package-specific Options & Macros go here |
15 |
|
16 |
C Designed to simplify the Ajoint code: |
17 |
#if ( defined (ALLOW_KAPGM_CONTROL) || \ |
18 |
defined (ALLOW_KAPREDI_CONTROL) ) |
19 |
# define GMREDI_WITH_STABLE_ADJOINT |
20 |
#endif |
21 |
C -- exclude the clipping/tapering part of the code that is not used |
22 |
#define GM_EXCLUDE_CLIPPING |
23 |
#define GM_EXCLUDE_FM07_TAP |
24 |
#define GM_EXCLUDE_AC02_TAP |
25 |
C #define GM_EXCLUDE_TAPERING |
26 |
#define GM_EXCLUDE_SUBMESO |
27 |
|
28 |
C This allows to use Visbeck et al formulation to compute K_GM+Redi |
29 |
#undef GM_VISBECK_VARIABLE_K |
30 |
C Use old calculation (before 2007/05/24) of Visbeck etal K_GM+Redi |
31 |
C (which depends on tapering scheme) |
32 |
#undef OLD_VISBECK_CALC |
33 |
|
34 |
C This allows the leading diagonal (top two rows) to be non-unity |
35 |
C (a feature required when tapering adiabatically). |
36 |
#define GM_NON_UNITY_DIAGONAL |
37 |
|
38 |
C Allows to use different values of K_GM and K_Redi ; also to |
39 |
C be used with the advective form (Bolus velocity) of GM |
40 |
#define GM_EXTRA_DIAGONAL |
41 |
|
42 |
C Allows to use the advective form (Bolus velocity) of GM |
43 |
C instead of the Skew-Flux form (=default) |
44 |
#define GM_BOLUS_ADVEC |
45 |
|
46 |
C Allows to use the Boundary-Value-Problem method to evaluate GM Bolus transport |
47 |
#undef GM_BOLUS_BVP |
48 |
|
49 |
#endif /* ALLOW_GMREDI */ |
50 |
#endif /* GMREDI_OPTIONS_H */ |
51 |
|
52 |
CEH3 ;;; Local Variables: *** |
53 |
CEH3 ;;; mode:fortran *** |
54 |
CEH3 ;;; End: *** |