21 |
INTEGER OBCS_ldRec(nSx,nSy) |
INTEGER OBCS_ldRec(nSx,nSy) |
22 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
23 |
|
|
|
C OB[N,S,E,W][u,v,t,s,a,h,sn,sl,uice,vice]File :: Files with boundary conditions, |
|
|
C the letter combinations mean: |
|
|
C N/S/E/W :: northern/southern/eastern/western boundary |
|
|
C u/v/t/s :: ocean u/v velocities, temperature/salinity |
|
|
C a/h :: sea ice concentration/effective thickness |
|
|
C sn/sl :: effective snow thickness/sea ice salinity |
|
|
C uice/vice :: sea ice u/v drift velocities |
|
|
|
|
24 |
C-- COMMON /OBCS_FIELDS/ Open boundary related stuff |
C-- COMMON /OBCS_FIELDS/ Open boundary related stuff |
25 |
|
C OB[N,S,E,W][u,v,w,t,s,eta,am,ph] :: Fields with boundary conditions, |
26 |
|
C the letter combinations mean: |
27 |
|
C N/S/E/W :: northern/southern/eastern/western boundary |
28 |
|
C u/v/w/t/s :: ocean u/v/w velocities, temperature/salinity |
29 |
|
C eta :: sea surface height |
30 |
|
C am/ph :: tidal amplitude (m/s) / phase (s) |
31 |
C OBNu is the U value imposed at the Northern OB |
C OBNu is the U value imposed at the Northern OB |
32 |
C OBNv is the V value imposed at the Northern OB |
C OBNv is the V value imposed at the Northern OB |
33 |
C OBNt is the T value imposed at the Northern OB |
C OBNt is the T value imposed at the Northern OB |
34 |
C OBNs is the S value imposed at the Northern OB |
C OBNs is the S value imposed at the Northern OB |
|
C OBNa is the ice AREA value imposed at the Northern OB |
|
|
C OBNh is the ice HEFF value imposed at the Northern OB |
|
|
C OBNsl is the ice HSALT value imposed at the Northern OB |
|
|
C OBNsn is the ice HSNOW value imposed at the Northern OB |
|
|
C OBNuice is the uice value imposed at the Northern OB |
|
|
C OBNvice is the vice value imposed at the Northern OB |
|
35 |
C etc |
C etc |
36 |
|
|
37 |
#ifdef ALLOW_OBCS_NORTH |
#ifdef ALLOW_OBCS_NORTH |
41 |
_RL OBNv (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNv (1-Olx:sNx+Olx,Nr,nSx,nSy) |
42 |
_RL OBNt (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNt (1-Olx:sNx+Olx,Nr,nSx,nSy) |
43 |
_RL OBNs (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNs (1-Olx:sNx+Olx,Nr,nSx,nSy) |
44 |
#ifdef ALLOW_OBCS_PRESCRIBE |
# ifdef ALLOW_OBCS_PRESCRIBE |
45 |
COMMON /OBCS_FIELDS_AUX_N/ |
COMMON /OBCS_FIELDS_AUX_N/ |
46 |
& OBNu0,OBNv0,OBNt0,OBNs0, |
& OBNu0,OBNv0,OBNt0,OBNs0, |
47 |
& OBNu1,OBNv1,OBNt1,OBNs1 |
& OBNu1,OBNv1,OBNt1,OBNs1 |
53 |
_RL OBNv1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNv1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
54 |
_RL OBNt1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNt1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
55 |
_RL OBNs1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNs1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
56 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
# endif /* ALLOW_OBCS_PRESCRIBE */ |
57 |
#ifdef ALLOW_OBCS_STEVENS |
# ifdef ALLOW_OBCS_STEVENS |
58 |
COMMON /OBCS_FIELDS_STEVENS_N/ |
COMMON /OBCS_FIELDS_STEVENS_N/ |
59 |
& OBNvStevens, OBNtStevens, OBNsStevens |
& OBNvStevens, OBNtStevens, OBNsStevens |
60 |
_RL OBNvStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNvStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
61 |
_RL OBNtStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNtStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
62 |
_RL OBNsStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBNsStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
63 |
#endif /* ALLOW_OBCS_STEVENS */ |
# endif /* ALLOW_OBCS_STEVENS */ |
64 |
|
# ifdef ALLOW_OBCS_TIDES |
65 |
|
COMMON /OBCS_FIELDS_TIDES_N/ OBNam, OBNph |
66 |
|
_RL OBNam (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
67 |
|
_RL OBNph (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
68 |
|
# endif /* ALLOW_OBCS_TIDES */ |
69 |
#endif /* ALLOW_OBCS_NORTH */ |
#endif /* ALLOW_OBCS_NORTH */ |
70 |
|
|
71 |
#ifdef ALLOW_OBCS_SOUTH |
#ifdef ALLOW_OBCS_SOUTH |
75 |
_RL OBSv (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSv (1-Olx:sNx+Olx,Nr,nSx,nSy) |
76 |
_RL OBSt (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSt (1-Olx:sNx+Olx,Nr,nSx,nSy) |
77 |
_RL OBSs (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSs (1-Olx:sNx+Olx,Nr,nSx,nSy) |
78 |
#ifdef ALLOW_OBCS_PRESCRIBE |
# ifdef ALLOW_OBCS_PRESCRIBE |
79 |
COMMON /OBCS_FIELDS_AUX_S/ |
COMMON /OBCS_FIELDS_AUX_S/ |
80 |
& OBSu0,OBSv0,OBSt0,OBSs0, |
& OBSu0,OBSv0,OBSt0,OBSs0, |
81 |
& OBSu1,OBSv1,OBSt1,OBSs1 |
& OBSu1,OBSv1,OBSt1,OBSs1 |
87 |
_RL OBSv1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSv1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
88 |
_RL OBSt1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSt1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
89 |
_RL OBSs1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSs1 (1-Olx:sNx+Olx,Nr,nSx,nSy) |
90 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
# endif /* ALLOW_OBCS_PRESCRIBE */ |
91 |
#ifdef ALLOW_OBCS_STEVENS |
# ifdef ALLOW_OBCS_STEVENS |
92 |
COMMON /OBCS_FIELDS_STEVENS_S/ |
COMMON /OBCS_FIELDS_STEVENS_S/ |
93 |
& OBSvStevens, OBStStevens, OBSsStevens |
& OBSvStevens, OBStStevens, OBSsStevens |
94 |
_RL OBSvStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSvStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
95 |
_RL OBStStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBStStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
96 |
_RL OBSsStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
_RL OBSsStevens (1-Olx:sNx+Olx,Nr,nSx,nSy) |
97 |
#endif /* ALLOW_OBCS_STEVENS */ |
# endif /* ALLOW_OBCS_STEVENS */ |
98 |
|
# ifdef ALLOW_OBCS_TIDES |
99 |
|
COMMON /OBCS_FIELDS_TIDES_S/ OBSam, OBSph |
100 |
|
_RL OBSam (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
101 |
|
_RL OBSph (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
102 |
|
# endif /* ALLOW_OBCS_TIDES */ |
103 |
#endif /* ALLOW_OBCS_SOUTH */ |
#endif /* ALLOW_OBCS_SOUTH */ |
104 |
|
|
105 |
#ifdef ALLOW_OBCS_EAST |
#ifdef ALLOW_OBCS_EAST |
109 |
_RL OBEv (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEv (1-Oly:sNy+Oly,Nr,nSx,nSy) |
110 |
_RL OBEt (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEt (1-Oly:sNy+Oly,Nr,nSx,nSy) |
111 |
_RL OBEs (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEs (1-Oly:sNy+Oly,Nr,nSx,nSy) |
112 |
#ifdef ALLOW_OBCS_PRESCRIBE |
# ifdef ALLOW_OBCS_PRESCRIBE |
113 |
COMMON /OBCS_FIELDS_AUX_E/ |
COMMON /OBCS_FIELDS_AUX_E/ |
114 |
& OBEu0,OBEv0,OBEt0,OBEs0, |
& OBEu0,OBEv0,OBEt0,OBEs0, |
115 |
& OBEu1,OBEv1,OBEt1,OBEs1 |
& OBEu1,OBEv1,OBEt1,OBEs1 |
121 |
_RL OBEv1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEv1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
122 |
_RL OBEt1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEt1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
123 |
_RL OBEs1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEs1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
124 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
# endif /* ALLOW_OBCS_PRESCRIBE */ |
125 |
#ifdef ALLOW_OBCS_STEVENS |
# ifdef ALLOW_OBCS_STEVENS |
126 |
COMMON /OBCS_FIELDS_STEVENS_E/ |
COMMON /OBCS_FIELDS_STEVENS_E/ |
127 |
& OBEuStevens, OBEtStevens, OBEsStevens |
& OBEuStevens, OBEtStevens, OBEsStevens |
128 |
_RL OBEuStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEuStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
129 |
_RL OBEtStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEtStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
130 |
_RL OBEsStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBEsStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
131 |
#endif /* ALLOW_OBCS_STEVENS */ |
# endif /* ALLOW_OBCS_STEVENS */ |
132 |
|
# ifdef ALLOW_OBCS_TIDES |
133 |
|
COMMON /OBCS_FIELDS_TIDES_E/ OBEam, OBEph |
134 |
|
_RL OBEam (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
135 |
|
_RL OBEph (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
136 |
|
# endif /* ALLOW_OBCS_TIDES */ |
137 |
#endif /* ALLOW_OBCS_EAST */ |
#endif /* ALLOW_OBCS_EAST */ |
138 |
|
|
139 |
#ifdef ALLOW_OBCS_WEST |
#ifdef ALLOW_OBCS_WEST |
143 |
_RL OBWv (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWv (1-Oly:sNy+Oly,Nr,nSx,nSy) |
144 |
_RL OBWt (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWt (1-Oly:sNy+Oly,Nr,nSx,nSy) |
145 |
_RL OBWs (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWs (1-Oly:sNy+Oly,Nr,nSx,nSy) |
146 |
#ifdef ALLOW_OBCS_PRESCRIBE |
# ifdef ALLOW_OBCS_PRESCRIBE |
147 |
COMMON /OBCS_FIELDS_AUX_W/ |
COMMON /OBCS_FIELDS_AUX_W/ |
148 |
& OBWu0,OBWv0,OBWt0,OBWs0, |
& OBWu0,OBWv0,OBWt0,OBWs0, |
149 |
& OBWu1,OBWv1,OBWt1,OBWs1 |
& OBWu1,OBWv1,OBWt1,OBWs1 |
155 |
_RL OBWv1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWv1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
156 |
_RL OBWt1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWt1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
157 |
_RL OBWs1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWs1 (1-Oly:sNy+Oly,Nr,nSx,nSy) |
158 |
#endif /* ALLOW_OBCS_PRESCRIBE */ |
# endif /* ALLOW_OBCS_PRESCRIBE */ |
159 |
#ifdef ALLOW_OBCS_STEVENS |
# ifdef ALLOW_OBCS_STEVENS |
160 |
COMMON /OBCS_FIELDS_STEVENS_W/ |
COMMON /OBCS_FIELDS_STEVENS_W/ |
161 |
& OBWuStevens, OBWtStevens, OBWsStevens |
& OBWuStevens, OBWtStevens, OBWsStevens |
162 |
_RL OBWuStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWuStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
163 |
_RL OBWtStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWtStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
164 |
_RL OBWsStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
_RL OBWsStevens (1-Oly:sNy+Oly,Nr,nSx,nSy) |
165 |
#endif /* ALLOW_OBCS_STEVENS */ |
# endif /* ALLOW_OBCS_STEVENS */ |
166 |
|
# ifdef ALLOW_OBCS_TIDES |
167 |
|
COMMON /OBCS_FIELDS_TIDES_W/ OBWam, OBWph |
168 |
|
_RL OBWam (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
169 |
|
_RL OBWph (1-Olx:sNx+Olx,tidalComponents,nSx,nSy) |
170 |
|
# endif /* ALLOW_OBCS_TIDES */ |
171 |
#endif /* ALLOW_OBCS_WEST */ |
#endif /* ALLOW_OBCS_WEST */ |
172 |
|
|
173 |
#ifdef ALLOW_NONHYDROSTATIC |
#ifdef ALLOW_NONHYDROSTATIC |