/[MITgcm]/MITgcm/model/inc/FFIELDS.h
ViewVC logotype

Contents of /MITgcm/model/inc/FFIELDS.h

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.32 - (show annotations) (download)
Thu Nov 9 03:54:10 2006 UTC (17 years, 5 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint59, checkpoint58y_post, checkpoint58t_post, checkpoint58w_post, mitgcm_mapl_00, checkpoint58r_post, checkpoint58v_post, checkpoint58x_post, checkpoint58u_post, checkpoint58s_post
Changes since 1.31: +16 -17 lines
File MIME type: text/plain
Split FFIELDS common block to make adcommon, g_common safer

1 C $Header: /u/gcmpack/MITgcm/model/inc/FFIELDS.h,v 1.31 2006/01/02 21:17:02 heimbach Exp $
2 C $Name: $
3 CBOP
4 C !ROUTINE: FFIELDS.h
5 C !INTERFACE:
6 C include "FFIELDS.h"
7 C !DESCRIPTION:
8 C \bv
9 C *==========================================================*
10 C | FFIELDS.h
11 C | o Model forcing fields
12 C *==========================================================*
13 C | More flexible surface forcing configurations are
14 C | available via pkg/exf and pkg/seaice
15 C *==========================================================*
16 C \ev
17 CEOP
18 C
19 C fu :: Zonal surface wind stress in N/m^2
20 C > 0 for increase in uVel, which is west to
21 C east for cartesian and spherical polar grids
22 C Typical range: -0.5 < fu < 0.5
23 C Southwest C-grid U point
24 C
25 C fv :: Meridional surface wind stress in N/m^2
26 C > 0 for increase in vVel, which is south to
27 C north for cartesian and spherical polar grids
28 C Typical range: -0.5 < fv < 0.5
29 C Southwest C-grid V point
30 C
31 C EmPmR :: Net upward freshwater flux in m/s
32 C EmPmR = Evaporation - precipitation - runoff
33 C > 0 for increase in salt (ocean salinity)
34 C Typical range: -1e-7 < EmPmR < 1e-7
35 C Southwest C-grid tracer point
36 C
37 C saltFlux :: Net upward salt flux in psu.kg/m^2/s
38 C flux of Salt taken out of the ocean per time unit (second).
39 C Note: a) only used when salty sea-ice forms or melts.
40 C b) units: when salinity (unit= psu) is expressed
41 C in g/kg, saltFlux unit becomes g/m^2/s.
42 C > 0 for decrease in SSS.
43 C Southwest C-grid tracer point
44 C
45 C Qnet :: Net upward surface heat flux (including shortwave) in W/m^2
46 C Qnet = latent + sensible + net longwave + net shortwave
47 C > 0 for decrease in theta (ocean cooling)
48 C Typical range: -250 < Qnet < 600
49 C Southwest C-grid tracer point
50 C
51 C Qsw :: Net upward shortwave radiation in W/m^2
52 C Qsw = - ( downward - ice and snow absorption - reflected )
53 C > 0 for decrease in theta (ocean cooling)
54 C Typical range: -350 < Qsw < 0
55 C Southwest C-grid tracer point
56 C
57 C dQdT :: Thermal relaxation coefficient in W/m^2/degrees
58 C Southwest C-grid tracer point
59 C
60 C SST :: Sea surface temperature in degrees C for relaxation
61 C Southwest C-grid tracer point
62 C
63 C SSS :: Sea surface salinity in psu for relaxation
64 C Southwest C-grid tracer point
65 C
66 C lambdaThetaClimRelax :: Inverse time scale for relaxation ( 1/s ).
67 C
68 C lambdaSaltClimRelax :: Inverse time scale for relaxation ( 1/s ).
69
70 C pload :: for the ocean: atmospheric pressure at z=eta
71 C Units are Pa=N/m^2
72 C for the atmosphere: geopotential of the orography
73 C Units are meters (converted)
74 C sIceLoad :: sea-ice loading, expressed in Mass of ice+snow / area unit
75 C Units are kg/m^2
76 C Note: only used with Sea-Ice & RealFreshWater formulation
77 C EddyTaux -Zonal Eddy stress in N/m^2 used in external_forcing.F
78 C Eddytauy -Meridional Eddy stress in N/m^2 used in external_forcing.F
79 C EfluxY - y-component of Eliassen-Palm flux vector
80 C EfluxP - p-component of Eliassen-Palm flux vector
81
82 COMMON /FFIELDS_fu/ fu
83 COMMON /FFIELDS_fv/ fv
84 COMMON /FFIELDS_Qnet/ Qnet
85 COMMON /FFIELDS_Qsw/ Qsw
86 COMMON /FFIELDS_dQdT/ dQdT
87 COMMON /FFIELDS_EmPmR/ EmPmR
88 COMMON /FFIELDS_saltFlux/ saltFlux
89 COMMON /FFIELDS_SST/ SST
90 COMMON /FFIELDS_SSS/ SSS
91 COMMON /FFIELDS_lambdaThetaClimRelax/ lambdaThetaClimRelax
92 COMMON /FFIELDS_lambdaSaltClimRelax/ lambdaSaltClimRelax
93 #ifdef ATMOSPHERIC_LOADING
94 COMMON /FFIELDS_pload/ pload
95 COMMON /FFIELDS_sIceLoad/ sIceLoad
96 #endif
97
98 _RS fu (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
99 _RS fv (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
100 _RS Qnet (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
101 _RS Qsw (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
102 _RS dQdT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
103 _RS EmPmR (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
104 _RS saltFlux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
105 _RS SST (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
106 _RS SSS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
107 _RS lambdaThetaClimRelax(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
108 _RS lambdaSaltClimRelax(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
109 #ifdef ATMOSPHERIC_LOADING
110 _RS pload (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
111 _RS sIceLoad (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
112 #endif
113
114 #ifdef ALLOW_EP_FLUX
115 COMMON /efluxFFIELDS/ EfluxY,EfluxP
116 _RL EfluxY (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
117 _RL EfluxP (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
118 #endif
119
120 #ifdef ALLOW_TAU_EDDY
121 COMMON /edtauFFIELDS/ EddyTaux,EddyTauy
122 _RS EddyTaux (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
123 _RS EddyTauy (1-OLx:sNx+OLx,1-OLy:sNy+OLy,Nr,nSx,nSy)
124 #endif
125
126 #ifndef ALLOW_EXF
127 C taux[0,1] :: Temp. for zonal wind stress
128 C tauy[0,1] :: Temp. for merid. wind stress
129 C Qnet[0,1] :: Temp. for heat flux
130 C EmPmR[0,1] :: Temp. for fresh water flux
131 C saltFlux[0,1] :: Temp. for isurface salt flux
132 C SST[0,1] :: Temp. for theta climatalogy
133 C SSS[0,1] :: Temp. for theta climatalogy
134 C Qsw[0,1] :: Temp. for short wave component of heat flux
135 C pload[0,1] :: Temp. for atmospheric pressure at z=eta
136 C [0,1] :: End points for interpolation
137 C Above use static heap storage to allow exchange.
138
139 COMMON /TDFIELDS/
140 & taux0, tauy0, Qnet0, EmPmR0, SST0, SSS0,
141 & taux1, tauy1, Qnet1, EmPmR1, SST1, SSS1,
142 & saltFlux0, saltFlux1
143 #ifdef SHORTWAVE_HEATING
144 & , Qsw0, Qsw1
145 #endif
146 #ifdef ATMOSPHERIC_LOADING
147 & , pload0, pload1
148 #endif
149
150 _RS taux0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
151 _RS tauy0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
152 _RS Qnet0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
153 _RS EmPmR0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
154 _RS saltFlux0(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
155 _RS SST0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
156 _RS SSS0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
157 _RS taux1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
158 _RS tauy1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
159 _RS Qnet1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
160 _RS EmPmR1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
161 _RS saltFlux1(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
162 _RS SST1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
163 _RS SSS1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
164 #ifdef ATMOSPHERIC_LOADING
165 _RS pload0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
166 _RS pload1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
167 #endif
168 #ifdef SHORTWAVE_HEATING
169 _RS Qsw1 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
170 _RS Qsw0 (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
171 #endif
172 #endif /* ALLOW_EXF */
173
174 C surfaceForcingU units are r_unit.m/s^2 (=m^2/s^2 if r=z)
175 C -> usage in gU: gU = gU + surfaceForcingU/drF [m/s^2]
176 C surfaceForcingV units are r_unit.m/s^2 (=m^2/s^-2 if r=z)
177 C -> usage in gU: gV = gV + surfaceForcingV/drF [m/s^2]
178 C
179 C surfaceForcingS units are r_unit.psu/s (=psu.m/s if r=z)
180 C - EmPmR * S_surf plus salinity relaxation*drF(1)
181 C -> usage in gS: gS = gS + surfaceForcingS/drF [psu/s]
182 C
183 C surfaceForcingT units are r_unit.Kelvin/s (=Kelvin.m/s if r=z)
184 C - Qnet (+Qsw) plus temp. relaxation*drF(1)
185 C -> calculate -lambda*(T(model)-T(clim))
186 C Qnet assumed to be net heat flux including ShortWave rad.
187 C -> usage in gT: gT = gT + surfaceforcingT/drF [K/s]
188 C surfaceForcingTice
189 C - equivalent Temperature flux in the top level that corresponds
190 C to the melting or freezing of sea-ice.
191 C Note that the surface level temperature is modified
192 C directly by the sea-ice model in order to maintain
193 C water temperature under sea-ice at the freezing
194 C point. But we need to keep track of the
195 C equivalent amount of heat that this surface-level
196 C temperature change implies because it is used by
197 C the KPP package (kpp_calc.F and kpp_transport_t.F).
198 C Units are r_unit.K/s (=Kelvin.m/s if r=z) (>0 for ocean warming).
199
200 COMMON /SURFACE_FORCING/
201 & surfaceForcingU,
202 & surfaceForcingV,
203 & surfaceForcingT,
204 & surfaceForcingS,
205 & surfaceForcingTice
206 _RL surfaceForcingU (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
207 _RL surfaceForcingV (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
208 _RL surfaceForcingT (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
209 _RL surfaceForcingS (1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)
210 _RL surfaceForcingTice(1-OLx:sNx+OLx,1-OLy:sNy+OLy,nSx,nSy)

  ViewVC Help
Powered by ViewVC 1.1.22