1 |
C $Header: /u/gcmpack/MITgcm/pkg/ptracers/PTRACERS.h,v 1.19 2006/05/23 23:32:41 jmc Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#ifdef ALLOW_PTRACERS |
5 |
|
6 |
CBOP |
7 |
C !ROUTINE: PTRACERS.h |
8 |
C !INTERFACE: |
9 |
C #include PTRACERS.h |
10 |
|
11 |
C !DESCRIPTION: |
12 |
C Contains passive tracer fields and parameters. |
13 |
|
14 |
C Package flag |
15 |
logical PTRACERSisON |
16 |
COMMON /PTRACERS_PACKAGE/ PTRACERSisON |
17 |
|
18 |
C PTRACERS_taveFreq :: Frequency with which time-averaged PTRACERS |
19 |
C are written to post-processing files. |
20 |
C PTRACERS_Iter0 :: timestep number when tracers are initialized |
21 |
C PTRACERS_ref :: vertical profile for passive tracers, in |
22 |
C analogy to tRef and sRef, hence the name |
23 |
C PTRACERS_EvPrRn :: tracer concentration in Rain, Evap & RunOff |
24 |
C notes: a) used if both NonLin_FrSurf & useRealFreshWater are set. |
25 |
C b) use pTracer surface (local) value if = UNSET_RL (default) |
26 |
|
27 |
C PTRACERS parameters |
28 |
_RL PTRACERS_dumpFreq |
29 |
_RL PTRACERS_taveFreq |
30 |
_RL PTRACERS_monitorFreq |
31 |
_RL PTRACERS_diffKh(PTRACERS_num) |
32 |
_RL PTRACERS_diffK4(PTRACERS_num) |
33 |
_RL PTRACERS_diffKrNr(Nr,PTRACERS_num) |
34 |
_RL PTRACERS_ref(Nr,PTRACERS_num) |
35 |
_RL PTRACERS_EvPrRn(PTRACERS_num) |
36 |
INTEGER PTRACERS_Iter0 |
37 |
INTEGER PTRACERS_numInUse |
38 |
INTEGER PTRACERS_advScheme(PTRACERS_num) |
39 |
LOGICAL PTRACERS_ImplVertAdv(PTRACERS_num) |
40 |
LOGICAL PTRACERS_useGMRedi(PTRACERS_num) |
41 |
LOGICAL PTRACERS_useKPP(PTRACERS_num) |
42 |
LOGICAL PTRACERS_useRecords |
43 |
CHARACTER*(MAX_LEN_FNAM) PTRACERS_initialFile(PTRACERS_num) |
44 |
CHARACTER*(MAX_LEN_FNAM) PTRACERS_names(PTRACERS_num) |
45 |
CHARACTER*(MAX_LEN_FNAM) PTRACERS_long_names(PTRACERS_num) |
46 |
CHARACTER*(MAX_LEN_FNAM) PTRACERS_units(PTRACERS_num) |
47 |
CHARACTER*2 PTRACERS_iolabel(PTRACERS_num) |
48 |
LOGICAL |
49 |
& PTRACERS_monitor_mnc, PTRACERS_monitor_stdio, |
50 |
& PTRACERS_timeave_mdsio, PTRACERS_snapshot_mdsio, |
51 |
& PTRACERS_pickup_write_mdsio, PTRACERS_pickup_read_mdsio, |
52 |
& PTRACERS_timeave_mnc, PTRACERS_snapshot_mnc, |
53 |
& PTRACERS_pickup_write_mnc, PTRACERS_pickup_read_mnc |
54 |
COMMON /PTRACERS_PARAMS/ |
55 |
& PTRACERS_dumpFreq, |
56 |
& PTRACERS_taveFreq, |
57 |
& PTRACERS_monitorFreq, |
58 |
& PTRACERS_diffKh, |
59 |
& PTRACERS_diffK4, |
60 |
& PTRACERS_diffKrNr, |
61 |
& PTRACERS_ref, |
62 |
& PTRACERS_EvPrRn, |
63 |
& PTRACERS_Iter0, |
64 |
& PTRACERS_numInUse, |
65 |
& PTRACERS_advScheme, |
66 |
& PTRACERS_ImplVertAdv, |
67 |
& PTRACERS_useGMRedi, |
68 |
& PTRACERS_useKPP, |
69 |
& PTRACERS_useRecords, |
70 |
& PTRACERS_initialFile, |
71 |
& PTRACERS_names, |
72 |
& PTRACERS_long_names, |
73 |
& PTRACERS_units, |
74 |
& PTRACERS_timeave_mdsio, PTRACERS_snapshot_mdsio, |
75 |
& PTRACERS_pickup_write_mdsio, PTRACERS_pickup_read_mdsio, |
76 |
& PTRACERS_monitor_stdio, PTRACERS_monitor_mnc, |
77 |
& PTRACERS_timeave_mnc, PTRACERS_snapshot_mnc, |
78 |
& PTRACERS_pickup_write_mnc, PTRACERS_pickup_read_mnc, |
79 |
& PTRACERS_iolabel |
80 |
|
81 |
|
82 |
C pTracer :: passive tracer concentration (tr per unit volume). |
83 |
C gPtr :: work-space for time-stepping |
84 |
C gPtrNM1 :: work-space for time-stepping |
85 |
_RL pTracer (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
86 |
& PTRACERS_num) |
87 |
_RL gPtr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
88 |
& PTRACERS_num) |
89 |
_RL gPtrNM1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
90 |
& PTRACERS_num) |
91 |
_RL surfaceForcingPtr (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy, |
92 |
& PTRACERS_num) |
93 |
COMMON /PTRACERS_FIELDS/ |
94 |
& pTracer, gPtr, gPtrNM1, surfaceForcingPtr |
95 |
|
96 |
CEOP |
97 |
#endif /* ALLOW_PTRACERS */ |
98 |
|
99 |
CEH3 ;;; Local Variables: *** |
100 |
CEH3 ;;; mode:fortran *** |
101 |
CEH3 ;;; End: *** |