source: trunk/Roms_agrif/cppdefs.h @ 4

Last change on this file since 4 was 4, checked in by pinsard, 17 years ago

modification according to /usr/temp/vech/quiberon/Roms_tools/Roms_Agrif_pisces/

File size: 10.6 KB
Line 
1!
2! $Id: cppdefs.h,v 1.28 2005/10/27 09:58:11 pmarches Exp $
3!
4/*
5   This is "cppdefs.h": MODEL CONFIGURATION FILE
6   ==== == ============ ===== ============= ====
7*/
8#undef BASIN           /* Basin Example */
9#undef CANYON_A        /* Canyon_A Example */
10#undef CANYON_B        /* Canyon_B Example */
11#undef GRAV_ADJ        /* Graviational Adjustment Example */
12#undef INNERSHELF      /* Inner Shelf Example */
13#undef RIVER           /* River run-off Example */
14#undef OVERFLOW        /* Graviational/Overflow Example */
15#undef SEAMOUNT        /* Seamount Example */
16#undef SHELFRONT       /* Shelf Front Example */
17#undef SOLITON         /* Equatorial Rossby Wave Example */
18#undef UPWELLING       /* Upwelling Example */
19#undef VORTEX          /* Baroclinic Vortex Example */
20#define REGIONAL       /* REGIONAL Applications */
21
22
23#if defined REGIONAL
24/*
25!====================================================================
26!               REGIONAL (realistic) Configurations
27!====================================================================
28!
29!------------------------
30! BASIC OPTIONS
31!------------------------
32!
33*/
34                      /* Configuration Namea */
35# define PERU
36                      /* Parallelization */
37# undef  OPENMP
38# undef  MPI
39                      /* Nesting */
40# define  AGRIF
41# define  AGRIF_2WAY
42                      /* Open Boundary Conditions */
43# undef  TIDES
44# undef  OBC_EAST
45# define OBC_WEST
46# define OBC_NORTH
47# define OBC_SOUTH
48                      /* Applications */
49# undef  BIOLOGY
50# undef  FLOATS
51# undef  STATIONS
52# undef  PASSIVE_TRACER
53# undef  SEDIMENT
54# undef  BBL
55/*!
56!------------------------
57! PRE-SELECTED OPTIONS
58!------------------------
59*/
60                      /* Parallelization */
61# ifdef MPI
62#  undef  PARALLEL_FILES
63# endif
64                      /* Model dynamics */
65# define SOLVE3D
66# define UV_COR
67# define UV_ADV
68# ifdef TIDES
69#  define SSH_TIDES
70#  define UV_TIDES
71#  define TIDERAMP
72# endif
73                      /* Grid configuration */
74# define CURVGRID
75# define SPHERICAL
76# define MASKING
77                      /* Input/Output & Diagnostics */
78# define AVERAGES
79# define AVERAGES_K
80# undef  DIAGNOSTICS_TS
81# undef  DIAGNOSTICS_UV
82                      /* Equation of State */
83# define SALINITY
84# define NONLIN_EOS
85# define SPLIT_EOS
86                      /* Surface Forcing */
87# define QCORRECTION
88# define SFLX_CORR
89# define DIURNAL_SRFLUX
90
91# undef  BULK_FLUX
92# ifdef BULK_FLUX
93#  define BULK_EP
94#  define BULK_SMFLUX
95#  undef  DIURNAL_SRFLUX
96# endif
97# ifdef BULK_EP
98#  undef  QCORRECTION
99#  undef  SFLX_CORR
100# endif
101# ifdef BULK_SMFLUX
102#  undef BULK_WVEC
103#  define BULK_WSTR
104# endif
105                      /* Lateral Forcing */
106# define SPONGE
107
108# undef CLIMATOLOGY
109# ifdef CLIMATOLOGY
110#  define ZCLIMATOLOGY
111#  define M2CLIMATOLOGY
112#  define M3CLIMATOLOGY
113#  define TCLIMATOLOGY
114
115#  define ZNUDGING
116#  define M2NUDGING
117#  define M3NUDGING
118#  define TNUDGING
119#  undef  ROBUST_DIAG
120# endif
121
122# define FRC_BRY
123# ifdef FRC_BRY
124#  define Z_FRC_BRY
125#  define M2_FRC_BRY
126#  define M3_FRC_BRY
127#  define T_FRC_BRY
128# endif
129                      /* Bottom Forcing */
130# define ANA_BSFLUX
131# define ANA_BTFLUX
132                      /* Point Sources - Rivers */
133# undef  PSOURCE
134# undef  ANA_PSOURCE
135                      /* Lateral Mixing */
136# define UV_VIS2
137# define MIX_GP_UV
138# define TS_DIF2
139# define MIX_GP_TS
140# undef  SMAGORINSKY
141# ifdef SMAGORINSKY
142#  define SMAGO_UV
143#  undef  SMAGO_TS
144# endif
145# if defined TCLIMATOLOGY & !defined AGRIF
146#  define CLIMAT_TS_MIXH
147# endif
148                      /* Vertical Mixing */
149# undef  BODYFORCE
150# undef  BVF_MIXING
151# define LMD_MIXING
152# ifdef LMD_MIXING
153#  define LMD_SKPP
154#  define LMD_BKPP
155#  define LMD_RIMIX
156#  define LMD_CONVEC
157#  undef  LMD_DDMIX
158#  undef  LMD_NONLOCAL
159# endif
160                      /* Open Boundary Conditions */
161# ifdef TIDES
162#  define OBC_M2FLATHER
163# else
164#  undef  OBC_M2SPECIFIED
165#  undef  OBC_M2FLATHER
166#  undef  OBC_M2CHARACT
167#  define OBC_M2ORLANSKI
168#  ifdef OBC_M2ORLANSKI
169#   define OBC_VOLCONS
170#  endif
171# endif
172# define OBC_M3ORLANSKI
173# define OBC_TORLANSKI
174# undef  OBC_M3SPECIFIED
175# undef  OBC_TSPECIFIED
176
177/*
178!           Applications:
179!---------------------------------
180! Biology, floats, Stations,
181! Passive tracer, Sediments, BBL
182!---------------------------------
183*/
184# ifdef BIOLOGY
185#  define PISCES
186#  undef  BIO_NPZD
187#  undef  BIO_N2P2Z2D2
188#  undef  BIO_N2PZD2
189/*      BIOLOGY OPTIONS  */
190#  ifdef PISCES
191#   define key_trc_pisces
192#   define key_passivetrc
193#   undef DIAGNOSTICS_BIO
194#   ifdef DIAGNOSTICS_BIO
195#     define key_trc_diaadd
196#     define key_trc_dia3d
197#   endif
198#  endif
199#  ifdef BIO_NPZD
200#   undef OXYGEN      /* Under Development */
201#  endif
202#  if defined BIO_NPZD || defined BIO_N2P2Z2D2
203#   define  DIAGNOSTICS_BIO
204#  endif
205#  ifdef BIO_N2P2Z2D2
206#   undef VAR_CHL_C
207#  endif
208# endif
209
210# ifdef FLOATS
211#  undef FLOATS_GLOBAL_ATTRIBUTES
212#  undef IBM
213#  undef RANDOM_WALK
214#  ifdef RANDOM_WALK
215#   define DIEL_MIGRATION
216#   define RANDOM_VERTICAL
217#   define RANDOM_HORIZONTAL
218#  endif
219# endif
220
221# ifdef STATIONS
222#  define ALL_SIGMA
223# endif
224
225# ifdef SEDIMENT
226#  define ANA_SEDIMENT
227#  undef BED_ARMOR
228#  undef  ANA_SPFLUX
229#  undef  ANA_BPFLUX
230#  define LINEAR_CONTINUATION
231#  undef  NEUMANN
232# endif
233
234# ifdef BBL
235#  define ANA_WWAVE
236#  ifdef SEDIMENT
237#   undef  ANA_BSEDIM
238#  else
239#   define ANA_BSEDIM
240#  endif
241#  undef Z0_BL
242#  ifdef Z0_BL
243#   define Z0_RIP
244#  endif
245#  undef Z0_BIO
246# endif
247/*
248!
249!==========================================================
250!              IDEALIZED CONFIGURATIONS
251!==========================================================
252!
253*/
254#elif defined BASIN
255/*
256!                       Basin Example
257!                       ===== =======
258*/
259# define UV_ADV
260# define UV_COR
261# define UV_VIS2
262# define MIX_S_UV
263# define SOLVE3D
264# define TS_DIF2
265# define MIX_S_TS
266# define BODYFORCE
267# define ANA_GRID
268# define ANA_INITIAL
269# define ANA_SMFLUX
270# define ANA_STFLUX
271# define ANA_BTFLUX
272
273#elif defined CANYON_A
274/*
275!                       First Canyon Example
276!                       ===== ====== =======
277*/
278# define UV_ADV
279# define UV_COR
280# define SOLVE3D
281# define EW_PERIODIC
282# define ANA_GRID
283# define ANA_INITIAL
284# define ANA_SMFLUX
285# define ANA_STFLUX
286# define ANA_BTFLUX
287
288#elif defined CANYON_B
289/*
290!                       Second Canyon Example
291!                       ====== ====== =======
292*/
293# define UV_ADV
294# define UV_COR
295# define SOLVE3D
296# define EW_PERIODIC
297# define ANA_GRID
298# define ANA_INITIAL
299# define ANA_SMFLUX
300# define ANA_STFLUX
301# define ANA_BTFLUX
302# define ANA_VMIX
303
304#elif defined GRAV_ADJ
305/*
306!                       Gravitational Adjustment Example
307!                       ============= ========== =======
308*/
309# define UV_ADV
310# define UV_VIS2
311# define MIX_S_UV
312# define TS_DIF2
313# define MIX_S_TS
314# define SOLVE3D
315# define ANA_GRID
316# define ANA_INITIAL
317# define ANA_SMFLUX
318# define ANA_STFLUX
319# define ANA_BTFLUX
320
321#elif defined INNERSHELF
322/*
323!                       Inner Shelf Example
324!                       ===== ===== =======
325*/
326# define SOLVE3D
327# define UV_COR
328# define UV_ADV
329# define ANA_GRID
330# define ANA_INITIAL
331# define AVERAGES
332# define SALINITY
333# define NONLIN_EOS
334# define SPLIT_EOS
335# define ANA_SSFLUX
336# define ANA_SRFLUX
337# define ANA_STFLUX
338# define ANA_BSFLUX
339# define ANA_BTFLUX
340# define ANA_SMFLUX
341# define LMD_MIXING
342# define LMD_SKPP
343# define LMD_BKPP
344# define LMD_RIMIX
345# define LMD_CONVEC
346# define NS_PERIODIC
347
348#elif defined RIVER
349/*
350!                       River run-off test problem
351!                       ==========================
352*/
353# define SOLVE3D
354# define UV_ADV
355# define UV_COR
356# define M2FILTER_FLAT
357# define NONLIN_EOS
358# define SPLIT_EOS
359# define SALINITY
360# define ANA_GRID
361# define MASKING
362# define ANA_INITIAL
363# define ANA_SMFLUX
364# define ANA_STFLUX
365# define ANA_SSFLUX
366# define ANA_SRFLUX
367# define ANA_BTFLUX
368# define ANA_BSFLUX
369# define LMD_MIXING
370# define LMD_SKPP
371# define LMD_BKPP
372# define LMD_RIMIX
373# define LMD_CONVEC
374# define PSOURCE
375# define ANA_PSOURCE
376# define NS_PERIODIC
377# define FLOATS
378# ifdef FLOATS
379#   define RANDOM_WALK
380#   ifdef RANDOM_WALK
381#      define DIEL_MIGRATION
382#      define RANDOM_VERTICAL
383#      define RANDOM_HORIZONTAL
384#   endif
385# endif
386
387#elif defined SEAMOUNT
388/*
389!                       Seamount Example
390!                       ======== =======
391*/
392# define UV_ADV
393# define UV_COR
394# define SOLVE3D
395# define SALINITY
396# define NONLIN_EOS
397# define SPLIT_EOS
398# define ANA_GRID
399# define ANA_INITIAL
400# define ANA_SMFLUX
401# define ANA_STFLUX
402# define ANA_SSFLUX
403# define ANA_SRFLUX
404# define ANA_BTFLUX
405# define ANA_BSFLUX
406
407# elif defined SHELFRONT
408/*
409!                       Shelf Front Example
410!                       ===== ===== =======
411*/
412# define UV_ADV
413# define UV_COR
414# define SOLVE3D
415# define SALINITY
416# define ANA_GRID
417# define ANA_INITIAL
418# define ANA_SMFLUX
419# define ANA_STFLUX
420# define ANA_SSFLUX
421# define ANA_SRFLUX
422# define ANA_BTFLUX
423# define ANA_BSFLUX
424# define EW_PERIODIC
425
426#elif defined SOLITON
427/*
428!                       Equatorial Rossby Wave Example
429!                       ========== ====== ==== =======
430*/
431# define UV_COR
432# define UV_ADV
433# define ANA_GRID
434# define ANA_INITIAL
435# define AVERAGES
436# define EW_PERIODIC
437# define ANA_SMFLUX
438
439# elif defined OVERFLOW
440/*
441!                       Gravitational/Overflow Example
442!                       ====================== =======
443*/
444# define UV_ADV
445# define UV_COR
446# define UV_VIS2
447# define MIX_GP_UV
448# define TS_DIF2
449# define MIX_GP_TS
450# define SOLVE3D
451# define ANA_GRID
452# define ANA_INITIAL
453# define ANA_SMFLUX
454# define ANA_STFLUX
455# define ANA_BTFLUX
456
457#elif defined UPWELLING
458/*
459!                       Upwelling Example
460!                       ========= =======
461*/
462# define SOLVE3D
463# define UV_COR
464# define UV_ADV
465# define ANA_GRID
466# define ANA_INITIAL
467# define AVERAGES
468# define SALINITY
469# define NONLIN_EOS
470# define SPLIT_EOS
471# define ANA_SSFLUX
472# define ANA_SRFLUX
473# define ANA_STFLUX
474# define ANA_BSFLUX
475# define ANA_BTFLUX
476# define ANA_SMFLUX
477# define LMD_MIXING
478# define LMD_SKPP
479# define LMD_BKPP
480# define LMD_RIMIX
481# define LMD_CONVEC
482# define EW_PERIODIC
483
484#elif defined VORTEX
485/*
486!                       Baroclinic Vortex Example (TEST AGRIF)
487!                       ========== ====== ======= ===== ======
488*/
489# define OPENMP
490# undef  MPI
491# define AGRIF
492# define AGRIF_2WAY
493# define SOLVE3D
494# define UV_COR
495# define UV_ADV
496# define ANA_STFLUX
497# define ANA_SMFLUX
498# define ANA_BSFLUX
499# define ANA_BTFLUX
500# define ANA_VMIX
501# define UV_VIS2
502# define MIX_S_UV
503# define TS_DIF2
504# define MIX_S_TS
505# define SPONGE
506# define ZCLIMATOLOGY
507# define M2CLIMATOLOGY
508# define M3CLIMATOLOGY
509# define TCLIMATOLOGY
510# define ZNUDGING
511# define M2NUDGING
512# define M3NUDGING
513# define TNUDGING
514# define OBC_EAST
515# define OBC_WEST
516# define OBC_NORTH
517# define OBC_SOUTH
518# define OBC_M2FLATHER
519# define OBC_TORLANSKI
520# define OBC_M3ORLANSKI
521#endif
522
523#include "set_global_definitions.h"
524
Note: See TracBrowser for help on using the repository browser.