1 |
C $Header: $ |
2 |
C $Name: $ |
3 |
|
4 |
#ifdef ALLOW_OPPS |
5 |
|
6 |
CBOP |
7 |
C !ROUTINE: OPPS.h |
8 |
|
9 |
C !DESCRIPTION: \bv |
10 |
C /==========================================================\ |
11 |
C | OPPS.h | |
12 |
C | o Basic header for Paluszkiewicz and Romea (1997) | |
13 |
C | Ocean Penetrative Plume Scheme (OPPS) | |
14 |
C | Contains all OPPS field declarations. | |
15 |
C \==========================================================/ |
16 |
|
17 |
C----------------------------------------------------------------------- |
18 |
C |
19 |
C Parameters that can be set in data.opps |
20 |
C |
21 |
C MAX_ABE_ITERATIONS - maximum for iteration on fractional size |
22 |
C (default=1) |
23 |
C In the present implementation, there is no |
24 |
C iteration and max_abe_iterations should |
25 |
C always be 1 |
26 |
C OPPSdebugLevel - sets internal debug level (default = 0) to |
27 |
C produce some output for debugging |
28 |
C PlumeRadius - default = 100 m |
29 |
C STABILITY_THRESHOLD - threshold of vertical density difference, |
30 |
C beyond which convection starts |
31 |
C (default = -1.e-4 kg/m^3) |
32 |
C FRACTIONAL_AREA - (initial) fractional area that plume(s) |
33 |
C occupies (default = 0.1) |
34 |
C MAX_FRACTIONAL_AREA - maximum of above (default = 0.8), not used |
35 |
C VERTICAL_VELOCITY - initial (positive=downward) vertical |
36 |
C velocity of plume (default=0.03m/s) |
37 |
C ENTRAINMENT_RATE - default = - 0.05 |
38 |
C e2 - 2*ENTRAINMENT_RATE (cannot be set) |
39 |
C useGCMwVel - flag to replace VERTICAL_VELOCITY with |
40 |
C actual vertical velocity of GCM, probably |
41 |
C useless (default = .false.) |
42 |
C OPPSwriteState - flag to turn on ouput (.false.) |
43 |
C OPPSdumpFreq - default = dumpFreq (currently there is no |
44 |
C snap-shot output) |
45 |
C OPPStaveFreq - default = taveFreq |
46 |
C |
47 |
C OPPSconvectCount - counter for freqency of convection events |
48 |
C----------------------------------------------------------------------- |
49 |
C \ev |
50 |
CEOP |
51 |
|
52 |
INTEGER MAX_ABE_ITERATIONS |
53 |
CML default values from original code |
54 |
CML PARAMETER(MAX_ABE_ITERATIONS=1) |
55 |
INTEGER OPPSdebugLevel |
56 |
COMMON /OPPS_PARMS_I/ |
57 |
& MAX_ABE_ITERATIONS, OPPSdebugLevel |
58 |
|
59 |
_RL PlumeRadius |
60 |
_RL STABILITY_THRESHOLD |
61 |
_RL FRACTIONAL_AREA |
62 |
_RL MAX_FRACTIONAL_AREA |
63 |
_RL VERTICAL_VELOCITY |
64 |
_RL ENTRAINMENT_RATE |
65 |
_RL e2 |
66 |
_RL OPPSdumpFreq |
67 |
_RL OPPStaveFreq |
68 |
CML default values from original code |
69 |
CML PARAMETER ( PlumeRadius = 100.D0 ) |
70 |
CML PARAMETER ( STABILITY_THRESHOLD = -1.E-4 ) |
71 |
CML PARAMETER ( FRACTIONAL_AREA = .1E0 ) |
72 |
CML PARAMETER ( MAX_FRACTIONAL_AREA = .8E0 ) |
73 |
CML PARAMETER ( VERTICAL_VELOCITY = .02E0 ) |
74 |
CML PARAMETER ( ENTRAINMENT_RATE = -.05E0 ) |
75 |
CML PARAMETER ( e2 = 2.E0*ENTRAINMENT_RATE ) |
76 |
COMMON /OPPS_PARMS_R/ |
77 |
& PlumeRadius, |
78 |
& STABILITY_THRESHOLD, |
79 |
& FRACTIONAL_AREA, |
80 |
& MAX_FRACTIONAL_AREA, |
81 |
& VERTICAL_VELOCITY, |
82 |
& ENTRAINMENT_RATE, |
83 |
& e2, |
84 |
& OPPSdumpFreq, OPPStaveFreq |
85 |
|
86 |
_RL OPPSconvectCount(1-OLx:sNx+OLx,1-OLy:sNy+OLy, |
87 |
& Nr,nSx,nSy) |
88 |
COMMON /OPPS_FIELDS/ OPPSconvectCount |
89 |
|
90 |
LOGICAL OPPSisOn, OPPSwriteState, useGCMwVel |
91 |
CML LOGICAL debug, done |
92 |
COMMON /OPPS_PARMS_L/ |
93 |
& OPPSisOn, OPPSwriteState, useGCMwVel |
94 |
|
95 |
#endif /* ALLOW_OPPS */ |