1 |
C $Header: /u/gcmpack/MITgcm/pkg/rbcs/RBCS.h,v 1.8 2010/04/06 20:38:18 jmc Exp $ |
2 |
C $Name: $ |
3 |
|
4 |
#ifdef ALLOW_RBCS |
5 |
|
6 |
CBOP |
7 |
C !ROUTINE: RBCS.h |
8 |
C !INTERFACE: |
9 |
|
10 |
C !DESCRIPTION: |
11 |
C Contains tracer parameters and input files for 3-D relaxation |
12 |
C Some of these can be read in from data.rbcs |
13 |
|
14 |
c number of mask to read |
15 |
INTEGER maskLEN |
16 |
PARAMETER(maskLEN = 3 ) |
17 |
|
18 |
C rbcsForcingPeriod :: period of rbc data (in seconds) |
19 |
C rbcsForcingCycle :: cycle of rbc data (in seconds) |
20 |
C rbcsForcingOffset :: model time at beginning of first rbc period |
21 |
C rbcsSingleTimeFiles :: if .TRUE., rbc fields are given 1 file per time |
22 |
C :: labeled by iteration number (see rbcsIter0,deltaTrbcs) |
23 |
C deltaTrbcs :: time step used to compute iteration numbers for singleTimeFiles |
24 |
C rbcsIter0 :: singleTimeFile iteration number corresponding to rbcsForcingOffset |
25 |
C |
26 |
_RS RBC_mask(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy,maskLEN) |
27 |
_RL RBCtemp(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
28 |
_RL RBCsalt(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
29 |
_RL tauRelaxT |
30 |
_RL tauRelaxS |
31 |
_RL rbcsForcingPeriod |
32 |
_RL rbcsForcingCycle |
33 |
_RL rbcsForcingOffset |
34 |
_RL deltaTrbcs |
35 |
INTEGER rbcsIniter |
36 |
INTEGER rbcsIter0 |
37 |
LOGICAL rbcsSingleTimeFiles |
38 |
LOGICAL useRBCtemp |
39 |
LOGICAL useRBCsalt |
40 |
CHARACTER*(MAX_LEN_FNAM) relaxMaskFile(maskLEN) |
41 |
CHARACTER*(MAX_LEN_FNAM) relaxTFile |
42 |
CHARACTER*(MAX_LEN_FNAM) relaxSFile |
43 |
|
44 |
COMMON /RBCS_PARM01_RS/ |
45 |
& RBC_mask |
46 |
COMMON /RBCS_PARM01_R/ |
47 |
& RBCtemp, |
48 |
& RBCsalt, |
49 |
& tauRelaxT, |
50 |
& tauRelaxS, |
51 |
& rbcsForcingPeriod, |
52 |
& rbcsForcingCycle, |
53 |
& rbcsForcingOffset, |
54 |
& deltaTrbcs |
55 |
COMMON /RBCS_PARM01_I/ |
56 |
& rbcsIniter, |
57 |
& rbcsIter0 |
58 |
COMMON /RBCS_PARM01_L/ |
59 |
& rbcsSingleTimeFiles, |
60 |
& useRBCtemp, |
61 |
& useRBCsalt |
62 |
COMMON /RBCS_PARM01_C/ |
63 |
& relaxMaskFile, |
64 |
& relaxTFile, |
65 |
& relaxSFile |
66 |
|
67 |
#ifdef ALLOW_PTRACERS |
68 |
LOGICAL useRBCptrnum(PTRACERS_num) |
69 |
_RL RBC_ptracers(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
70 |
& PTRACERS_num) |
71 |
_RL tauRelaxPTR(PTRACERS_num) |
72 |
CHARACTER*(MAX_LEN_FNAM) relaxPtracerFile(PTRACERS_num) |
73 |
|
74 |
COMMON /RBCS_PARM02_L/ |
75 |
& useRBCptrnum |
76 |
COMMON /RBCS_PARM02_R/ |
77 |
& RBC_ptracers, |
78 |
& tauRelaxPTR |
79 |
COMMON /RBCS_PARM02_C/ |
80 |
& relaxPtracerFile |
81 |
#endif /* ALLOW_PTRACERS */ |
82 |
|
83 |
COMMON /RBCFFIELDS/ |
84 |
& rbct0, rbcs0, |
85 |
& rbct1, rbcs1 |
86 |
_RS rbct0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
87 |
_RS rbct1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
88 |
_RS rbcs0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
89 |
_RS rbcs1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy) |
90 |
|
91 |
#ifdef ALLOW_PTRACERS |
92 |
COMMON /RBCFFTRACER/ |
93 |
& rbcptr0, rbcptr1 |
94 |
_RS rbcptr0(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
95 |
& PTRACERS_num) |
96 |
_RS rbcptr1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy, |
97 |
& PTRACERS_num) |
98 |
#endif /* ALLOW_PTRACERS */ |
99 |
|
100 |
#endif /* ALLOW_RBCS */ |