/[MITgcm]/MITgcm/pkg/generic_advdiff/GAD_OPTIONS.h
ViewVC logotype

Contents of /MITgcm/pkg/generic_advdiff/GAD_OPTIONS.h

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


Revision 1.8 - (show annotations) (download)
Sat Jan 20 21:20:11 2007 UTC (17 years, 4 months ago) by adcroft
Branch: MAIN
Changes since 1.7: +2 -2 lines
File MIME type: text/plain
Added new advection scheme, OS7MP, which is seventh order and monotonicity preserving (note: not the same as monotonic!)
 o enabled with advScheme set to "7". (Who chose 77 for Superbee? Oh, that was me ...)
 o scheme requires a halo of 4
   - no error checking for this at the moment
 o scheme is coded for convenience rather than efficiency
   - can easily switch down order or select the TVD limiter by commenting lines
   - the y direction is coded with invert do i; do j loops (for now)

1 C $Header: /u/gcmpack/MITgcm/pkg/generic_advdiff/GAD_OPTIONS.h,v 1.7 2007/01/16 04:38:34 jmc Exp $
2 C $Name: $
3
4 CBOP
5 C !ROUTINE: GAD_OPTIONS.h
6
7 C !INTERFACE:
8 C #include "GAD_OPTIONS.h"
9
10 C !DESCRIPTION:
11 C Contains CPP macros/flags for controlling optional features of package.
12 CEOP
13
14 C CPP options file for GAD (Generic Advection Diffusion) package
15 C
16 C Use this file for selecting options within the GAD package
17
18 #ifndef GAD_OPTIONS_H
19 #define GAD_OPTIONS_H
20 #include "PACKAGES_CONFIG.h"
21 #ifdef ALLOW_GENERIC_ADVDIFF
22
23 #include "CPP_OPTIONS.h"
24
25 C This flag selects the form of COSINE(lat) scaling of bi-harmonic term.
26 C *only for use on a lat-lon grid*
27 C Setting this flag here only affects the bi-harmonic tracer terms; to
28 C use COSINEMETH_III in the momentum equations set it CPP_OPTIONS.h
29 #define COSINEMETH_III
30
31 C This selects isotropic scaling of harmonic and bi-harmonic term when
32 C using the COSINE(lat) scaling.
33 C Setting this flag here only affects the tracer diffusion terms; to
34 C use ISOTROPIC_COS_SCALING of the horizontal viscosity terms in the
35 C momentum equations set it CPP_OPTIONS.h; the following line
36 C even overrides setting the flag in CPP_OPTIONS.h
37 #undef ISOTROPIC_COS_SCALING
38
39 C As of checkpoint41, the inclusion of multi-dimensional advection
40 C introduces excessive recomputation/storage for the adjoint.
41 C We can disable it here using CPP because run-time flags are insufficient.
42 #undef DISABLE_MULTIDIM_ADVECTION
43
44 C This enable the use of 2nd-Order Moment advection scheme (Prather, 1986)
45 C due to large memory space (10 times more / tracer) requirement,
46 C by default, this part of the code is not compiled.
47 #define GAD_ALLOW_SOM_ADVECT
48
49 #else
50
51 C If GAD is disabled then so is multi-dimensional advection
52 #define DISABLE_MULTIDIM_ADVECTION
53
54 #endif /* ALLOW_GENERIC_ADVDIFF */
55 #endif /* GAD_OPTIONS_H */

  ViewVC Help
Powered by ViewVC 1.1.22