1 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
---|
2 | <html><head> |
---|
3 | <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"><title>PALM chapter 4.1</title></head> |
---|
4 | <body><h3><a name="chapter4.1"></a>4.1 |
---|
5 | Initialization parameters</h3> |
---|
6 | <br><table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2"> <tbody> |
---|
7 | <tr> <td style="vertical-align: top;"><font size="4"><b>Parameter name</b></font></td> |
---|
8 | <td style="vertical-align: top;"><font size="4"><b>Type</b></font></td> |
---|
9 | <td style="vertical-align: top;"> <p><b><font size="4">Default</font></b> <br> <b><font size="4">value</font></b></p> </td> |
---|
10 | <td style="vertical-align: top;"><font size="4"><b>Explanation</b></font></td> |
---|
11 | </tr> <tr> <td style="vertical-align: top;"> |
---|
12 | <p><a name="adjust_mixing_length"></a><b>adjust_mixing_length</b></p> |
---|
13 | </td> <td style="vertical-align: top;">L</td> |
---|
14 | <td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td> <td style="vertical-align: top;"> <p style="font-style: normal;">Near-surface adjustment of the |
---|
15 | mixing length to the Prandtl-layer law. </p> <p>Usually |
---|
16 | the mixing length in LES models l<sub>LES</sub> |
---|
17 | depends (as in PALM) on the grid size and is possibly restricted |
---|
18 | further in case of stable stratification and near the lower wall (see |
---|
19 | parameter <a href="#wall_adjustment">wall_adjustment</a>). |
---|
20 | With <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span> |
---|
21 | the Prandtl' mixing length l<sub>PR</sub> = kappa * z/phi |
---|
22 | is calculated |
---|
23 | and the mixing length actually used in the model is set l = MIN (l<sub>LES</sub>, |
---|
24 | l<sub>PR</sub>). This usually gives a decrease of the |
---|
25 | mixing length at |
---|
26 | the bottom boundary and considers the fact that eddy sizes |
---|
27 | decrease in the vicinity of the wall. </p> <p style="font-style: normal;"><b>Warning:</b> So |
---|
28 | far, there is |
---|
29 | no good experience with <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span> ! </p> |
---|
30 | <p>With <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span> and the |
---|
31 | Prandtl-layer being |
---|
32 | switched on (see <a href="#prandtl_layer">prandtl_layer</a>) |
---|
33 | <span style="font-style: italic;">'(u*)** 2+neumann'</span> |
---|
34 | should always be set as the lower boundary condition for the TKE (see <a href="#bc_e_b">bc_e_b</a>), |
---|
35 | otherwise the near-surface value of the TKE is not in agreement with |
---|
36 | the Prandtl-layer law (Prandtl-layer law and Prandtl-Kolmogorov-Ansatz |
---|
37 | should provide the same value for K<sub>m</sub>). A warning |
---|
38 | is given, |
---|
39 | if this is not the case.</p> </td> </tr> <tr> |
---|
40 | <td style="vertical-align: top;"> <p><a name="alpha_surface"></a><b>alpha_surface</b></p> |
---|
41 | </td> <td style="vertical-align: top;">R<br> </td> |
---|
42 | <td style="vertical-align: top;"><span style="font-style: italic;">0.0</span><br> </td> |
---|
43 | <td style="vertical-align: top;"> <p style="font-style: normal;">Inclination of the model domain |
---|
44 | with respect to the horizontal (in degrees). </p> <p style="font-style: normal;">By means of <b>alpha_surface</b> |
---|
45 | the model domain can be inclined in x-direction with respect to the |
---|
46 | horizontal. In this way flows over inclined surfaces (e.g. drainage |
---|
47 | flows, gravity flows) can be simulated. In case of <b>alpha_surface |
---|
48 | </b>/= <span style="font-style: italic;">0</span> |
---|
49 | the buoyancy term |
---|
50 | appears both in |
---|
51 | the equation of motion of the u-component and of the w-component.<br> |
---|
52 | </p> <p style="font-style: normal;">An inclination |
---|
53 | is only possible in |
---|
54 | case of cyclic horizontal boundary conditions along x AND y (see <a href="#bc_lr">bc_lr</a> |
---|
55 | and <a href="#bc_ns">bc_ns</a>) and <a href="#topography">topography</a> = <span style="font-style: italic;">'flat'</span>. </p> |
---|
56 | <p>Runs with inclined surface still require additional |
---|
57 | user-defined code as well as modifications to the default code. Please |
---|
58 | ask the <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/PALM_group.html#0">PALM |
---|
59 | developer group</a>.</p> </td> </tr> |
---|
60 | <tr> <td style="vertical-align: top;"> <p><a name="bc_e_b"></a><b>bc_e_b</b></p> </td> |
---|
61 | <td style="vertical-align: top;">C * 20</td> <td style="vertical-align: top;"><span style="font-style: italic;">'neumann'</span></td> |
---|
62 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
63 | TKE. </p> <p><b>bc_e_b</b> may be |
---|
64 | set to <span style="font-style: italic;">'neumann'</span> |
---|
65 | or <span style="font-style: italic;">'(u*) ** 2+neumann'</span>. |
---|
66 | <b>bc_e_b</b> |
---|
67 | = <span style="font-style: italic;">'neumann'</span> |
---|
68 | yields to |
---|
69 | e(k=0)=e(k=1) (Neumann boundary condition), where e(k=1) is calculated |
---|
70 | via the prognostic TKE equation. Choice of <span style="font-style: italic;">'(u*)**2+neumann'</span> |
---|
71 | also yields to |
---|
72 | e(k=0)=e(k=1), but the TKE at the Prandtl-layer top (k=1) is calculated |
---|
73 | diagnostically by e(k=1)=(us/0.1)**2. However, this is only allowed if |
---|
74 | a Prandtl-layer is used (<a href="#prandtl_layer">prandtl_layer</a>). |
---|
75 | If this is not the case, a warning is given and <b>bc_e_b</b> |
---|
76 | is reset |
---|
77 | to <span style="font-style: italic;">'neumann'</span>. |
---|
78 | </p> <p style="font-style: normal;">At the top |
---|
79 | boundary a Neumann |
---|
80 | boundary condition is generally used: (e(nz+1) = e(nz)).</p> </td> |
---|
81 | </tr> <tr> <td style="vertical-align: top;"> |
---|
82 | <p><a name="bc_lr"></a><b>bc_lr</b></p> |
---|
83 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
84 | <td style="vertical-align: top;"><span style="font-style: italic;">'cyclic'</span></td> |
---|
85 | <td style="vertical-align: top;">Boundary |
---|
86 | condition along x (for all quantities).<br> <br> |
---|
87 | By default, a cyclic boundary condition is used along x.<br> <br> |
---|
88 | <span style="font-weight: bold;">bc_lr</span> may |
---|
89 | also be |
---|
90 | assigned the values <span style="font-style: italic;">'dirichlet/radiation'</span> |
---|
91 | (inflow from left, outflow to the right) or <span style="font-style: italic;">'radiation/dirichlet'</span> |
---|
92 | (inflow from |
---|
93 | right, outflow to the left). This requires the multi-grid method to be |
---|
94 | used for solving the Poisson equation for perturbation pressure (see <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">psolver</a>) |
---|
95 | and it also requires cyclic boundary conditions along y (see <a href="#bc_ns">bc_ns</a>).<br> <br> |
---|
96 | In case of these non-cyclic lateral boundaries, a Dirichlet condition |
---|
97 | is used at the inflow for all quantities (initial vertical profiles - |
---|
98 | see <a href="#initializing_actions">initializing_actions</a> |
---|
99 | - are fixed during the run) except u, to which a Neumann (zero |
---|
100 | gradient) condition is applied. At the outflow, a radiation condition is used for all velocity components, while a Neumann (zero |
---|
101 | gradient) condition is used for the scalars. For perturbation |
---|
102 | pressure Neumann (zero gradient) conditions are assumed both at the |
---|
103 | inflow and at the outflow.<br> <br> |
---|
104 | When using non-cyclic lateral boundaries, a filter is applied to the |
---|
105 | velocity field in the vicinity of the outflow in order to suppress any |
---|
106 | reflections of outgoing disturbances (see <a href="#km_damp_max">km_damp_max</a> |
---|
107 | and <a href="#outflow_damping_width">outflow_damping_width</a>).<br> |
---|
108 | <br> |
---|
109 | In order to maintain a turbulent state of the flow, it may be |
---|
110 | neccessary to continuously impose perturbations on the horizontal |
---|
111 | velocity field in the vicinity of the inflow throughout the whole run. |
---|
112 | This can be switched on using <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#create_disturbances">create_disturbances</a>. |
---|
113 | The horizontal range to which these perturbations are applied is |
---|
114 | controlled by the parameters <a href="#inflow_disturbance_begin">inflow_disturbance_begin</a> |
---|
115 | and <a href="#inflow_disturbance_end">inflow_disturbance_end</a>. |
---|
116 | The vertical range and the perturbation amplitude are given by <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">disturbance_level_b</a>, |
---|
117 | <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">disturbance_level_t</a>, |
---|
118 | and <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">disturbance_amplitude</a>. |
---|
119 | The time interval at which perturbations are to be imposed is set by <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#dt_disturb">dt_disturb</a>.<br> |
---|
120 | <br> |
---|
121 | In case of non-cyclic horizontal boundaries <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#call_psolver_at_all_substeps">call_psolver |
---|
122 | at_all_substeps</a> = .T. should be used.<br> <br> <span style="font-weight: bold;">Note:</span><br> |
---|
123 | Using non-cyclic lateral boundaries requires very sensitive adjustments |
---|
124 | of the inflow (vertical profiles) and the bottom boundary conditions, |
---|
125 | e.g. a surface heating should not be applied near the inflow boundary |
---|
126 | because this may significantly disturb the inflow. Please check the |
---|
127 | model results very carefully.</td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="bc_ns"></a><b>bc_ns</b></p> |
---|
128 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
129 | <td style="vertical-align: top;"><span style="font-style: italic;">'cyclic'</span></td> |
---|
130 | <td style="vertical-align: top;">Boundary |
---|
131 | condition along y (for all quantities).<br> <br> |
---|
132 | By default, a cyclic boundary condition is used along y.<br> <br> |
---|
133 | <span style="font-weight: bold;">bc_ns</span> may |
---|
134 | also be |
---|
135 | assigned the values <span style="font-style: italic;">'dirichlet/radiation'</span> |
---|
136 | (inflow from rear ("north"), outflow to the front ("south")) or <span style="font-style: italic;">'radiation/dirichlet'</span> |
---|
137 | (inflow from front ("south"), outflow to the rear ("north")). This |
---|
138 | requires the multi-grid |
---|
139 | method to be used for solving the Poisson equation for perturbation |
---|
140 | pressure (see <a href="chapter_4.2.html#psolver">psolver</a>) |
---|
141 | and it also requires cyclic boundary conditions along x (see<br> <a href="#bc_lr">bc_lr</a>).<br> <br> |
---|
142 | In case of these non-cyclic lateral boundaries, a Dirichlet condition |
---|
143 | is used at the inflow for all quantities (initial vertical profiles - |
---|
144 | see <a href="chapter_4.1.html#initializing_actions">initializing_actions</a> |
---|
145 | - are fixed during the run) except u, to which a Neumann (zero |
---|
146 | gradient) condition is applied. At the outflow, a radiation condition is used for all velocity components, while a Neumann (zero |
---|
147 | gradient) condition is used for the scalars. For perturbation |
---|
148 | pressure Neumann (zero gradient) conditions are assumed both at the |
---|
149 | inflow and at the outflow.<br> <br> |
---|
150 | For further details regarding non-cyclic lateral boundary conditions |
---|
151 | see <a href="#bc_lr">bc_lr</a>.</td> </tr> |
---|
152 | <tr> <td style="vertical-align: top;"> <p><a name="bc_p_b"></a><b>bc_p_b</b></p> </td> |
---|
153 | <td style="vertical-align: top;">C * 20</td> <td style="vertical-align: top;"><span style="font-style: italic;">'neumann'</span></td> |
---|
154 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
155 | perturbation pressure. </p> <p>Allowed values |
---|
156 | are <span style="font-style: italic;">'dirichlet'</span>, |
---|
157 | <span style="font-style: italic;">'neumann'</span> |
---|
158 | and <span style="font-style: italic;">'neumann+inhomo'</span>. |
---|
159 | <span style="font-style: italic;">'dirichlet'</span> |
---|
160 | sets |
---|
161 | p(k=0)=0.0, <span style="font-style: italic;">'neumann'</span> |
---|
162 | sets p(k=0)=p(k=1). <span style="font-style: italic;">'neumann+inhomo'</span> |
---|
163 | corresponds to an extended Neumann boundary condition where heat flux |
---|
164 | or temperature inhomogeneities near the |
---|
165 | surface (pt(k=1)) are additionally regarded (see Shen and |
---|
166 | LeClerc |
---|
167 | (1995, Q.J.R. Meteorol. Soc., |
---|
168 | 1209)). This condition is only permitted with the Prandtl-layer |
---|
169 | switched on (<a href="#prandtl_layer">prandtl_layer</a>), |
---|
170 | otherwise the run is terminated. </p> <p>Since |
---|
171 | at the bottom boundary of the model the vertical |
---|
172 | velocity |
---|
173 | disappears (w(k=0) = 0.0), the consistent Neumann condition (<span style="font-style: italic;">'neumann'</span> or <span style="font-style: italic;">'neumann+inhomo'</span>) |
---|
174 | dp/dz = 0 should |
---|
175 | be used, which leaves the vertical component w unchanged when the |
---|
176 | pressure solver is applied. Simultaneous use of the Neumann boundary |
---|
177 | conditions both at the bottom and at the top boundary (<a href="#bc_p_t">bc_p_t</a>) |
---|
178 | usually yields no consistent solution for the perturbation pressure and |
---|
179 | should be avoided.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="bc_p_t"></a><b>bc_p_t</b></p> |
---|
180 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
181 | <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
182 | <td style="vertical-align: top;"> <p style="font-style: normal;">Top boundary condition of the |
---|
183 | perturbation pressure. </p> <p style="font-style: normal;">Allowed values are <span style="font-style: italic;">'dirichlet'</span> |
---|
184 | (p(k=nz+1)= 0.0) or <span style="font-style: italic;">'neumann'</span> |
---|
185 | (p(k=nz+1)=p(k=nz)). </p> <p>Simultaneous use |
---|
186 | of Neumann boundary conditions both at the |
---|
187 | top and bottom boundary (<a href="#bc_p_b">bc_p_b</a>) |
---|
188 | usually yields no consistent solution for the perturbation pressure and |
---|
189 | should be avoided. Since at the bottom boundary the Neumann |
---|
190 | condition is a good choice (see <a href="#bc_p_b">bc_p_b</a>), |
---|
191 | a Dirichlet condition should be set at the top boundary.</p> </td> |
---|
192 | </tr> <tr> <td style="vertical-align: top;"> |
---|
193 | <p><a name="bc_pt_b"></a><b>bc_pt_b</b></p> |
---|
194 | </td> <td style="vertical-align: top;">C*20</td> |
---|
195 | <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
196 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
197 | potential temperature. </p> <p>Allowed values |
---|
198 | are <span style="font-style: italic;">'dirichlet'</span> |
---|
199 | (pt(k=0) = const. = <a href="#pt_surface">pt_surface</a> |
---|
200 | + <a href="#pt_surface_initial_change">pt_surface_initial_change</a>; |
---|
201 | the user may change this value during the run using user-defined code) |
---|
202 | and <span style="font-style: italic;">'neumann'</span> |
---|
203 | (pt(k=0)=pt(k=1)). <br> |
---|
204 | When a constant surface sensible heat flux is used (<a href="#surface_heatflux">surface_heatflux</a>), <b>bc_pt_b</b> |
---|
205 | = <span style="font-style: italic;">'neumann'</span> |
---|
206 | must be used, because otherwise the resolved scale may contribute to |
---|
207 | the surface flux so that a constant value cannot be guaranteed.</p> |
---|
208 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="pc_pt_t"></a><b>bc_pt_t</b></p> |
---|
209 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
210 | <td style="vertical-align: top;"><span style="font-style: italic;">'initial_ gradient'</span></td> |
---|
211 | <td style="vertical-align: top;"> <p style="font-style: normal;">Top boundary condition of the |
---|
212 | potential temperature. </p> <p>Allowed are the |
---|
213 | values <span style="font-style: italic;">'dirichlet' </span>(pt(k=nz+1) |
---|
214 | does not change during the run), <span style="font-style: italic;">'neumann'</span> |
---|
215 | (pt(k=nz+1)=pt(k=nz)), and <span style="font-style: italic;">'initial_gradient'</span>. |
---|
216 | With the 'initial_gradient'-condition the value of the temperature |
---|
217 | gradient at the top is |
---|
218 | calculated from the initial |
---|
219 | temperature profile (see <a href="#pt_surface">pt_surface</a>, |
---|
220 | <a href="#pt_vertical_gradient">pt_vertical_gradient</a>) |
---|
221 | by bc_pt_t_val = (pt_init(k=nz+1) - |
---|
222 | pt_init(k=nz)) / dzu(nz+1).<br> |
---|
223 | Using this value (assumed constant during the |
---|
224 | run) the temperature boundary values are calculated as </p> |
---|
225 | <ul> <p style="font-style: normal;">pt(k=nz+1) = |
---|
226 | pt(k=nz) + |
---|
227 | bc_pt_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up to k=nz the prognostic |
---|
228 | equation for the temperature is solved).<br> |
---|
229 | When a constant sensible heat flux is used at the top boundary (<a href="chapter_4.1.html#top_heatflux">top_heatflux</a>), |
---|
230 | <b>bc_pt_t</b> = <span style="font-style: italic;">'neumann'</span> |
---|
231 | must be used, because otherwise the resolved scale may contribute to |
---|
232 | the top flux so that a constant value cannot be guaranteed.</p> </td> |
---|
233 | </tr> <tr> <td style="vertical-align: top;"> |
---|
234 | <p><a name="bc_q_b"></a><b>bc_q_b</b></p> |
---|
235 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
236 | <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
237 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
238 | specific humidity / total water content. </p> <p>Allowed |
---|
239 | values are <span style="font-style: italic;">'dirichlet'</span> |
---|
240 | (q(k=0) = const. = <a href="#q_surface">q_surface</a> |
---|
241 | + <a href="#q_surface_initial_change">q_surface_initial_change</a>; |
---|
242 | the user may change this value during the run using user-defined code) |
---|
243 | and <span style="font-style: italic;">'neumann'</span> |
---|
244 | (q(k=0)=q(k=1)). <br> |
---|
245 | When a constant surface latent heat flux is used (<a href="#surface_waterflux">surface_waterflux</a>), <b>bc_q_b</b> |
---|
246 | = <span style="font-style: italic;">'neumann'</span> |
---|
247 | must be used, because otherwise the resolved scale may contribute to |
---|
248 | the surface flux so that a constant value cannot be guaranteed.</p> |
---|
249 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="bc_q_t"></a><b>bc_q_t</b></p> |
---|
250 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">C |
---|
251 | * 20</span></td> <td style="vertical-align: top;"><span style="font-style: italic;">'neumann'</span></td> |
---|
252 | <td style="vertical-align: top;"> <p style="font-style: normal;">Top boundary condition of the |
---|
253 | specific humidity / total water content. </p> <p>Allowed |
---|
254 | are the values <span style="font-style: italic;">'dirichlet'</span> |
---|
255 | (q(k=nz) and q(k=nz+1) do |
---|
256 | not change during the run) and <span style="font-style: italic;">'neumann'</span>. |
---|
257 | With the Neumann boundary |
---|
258 | condition the value of the humidity gradient at the top is calculated |
---|
259 | from the |
---|
260 | initial humidity profile (see <a href="#q_surface">q_surface</a>, |
---|
261 | <a href="#q_vertical_gradient">q_vertical_gradient</a>) |
---|
262 | by: bc_q_t_val = ( q_init(k=nz) - q_init(k=nz-1)) / dzu(nz).<br> |
---|
263 | Using this value (assumed constant during the run) the humidity |
---|
264 | boundary values |
---|
265 | are calculated as </p> <ul> <p style="font-style: normal;">q(k=nz+1) =q(k=nz) + |
---|
266 | bc_q_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up tp k=nz the prognostic |
---|
267 | equation for q is solved). </p> </td> </tr> <tr> |
---|
268 | <td style="vertical-align: top;"> <p><a name="bc_s_b"></a><b>bc_s_b</b></p> </td> |
---|
269 | <td style="vertical-align: top;">C * 20</td> <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
270 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
271 | scalar concentration. </p> <p>Allowed values |
---|
272 | are <span style="font-style: italic;">'dirichlet'</span> |
---|
273 | (s(k=0) = const. = <a href="#s_surface">s_surface</a> |
---|
274 | + <a href="#s_surface_initial_change">s_surface_initial_change</a>; |
---|
275 | the user may change this value during the run using user-defined code) |
---|
276 | and <span style="font-style: italic;">'neumann'</span> |
---|
277 | (s(k=0) = |
---|
278 | s(k=1)). <br> |
---|
279 | When a constant surface concentration flux is used (<a href="#surface_scalarflux">surface_scalarflux</a>), <b>bc_s_b</b> |
---|
280 | = <span style="font-style: italic;">'neumann'</span> |
---|
281 | must be used, because otherwise the resolved scale may contribute to |
---|
282 | the surface flux so that a constant value cannot be guaranteed.</p> |
---|
283 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="bc_s_t"></a><b>bc_s_t</b></p> |
---|
284 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
285 | <td style="vertical-align: top;"><span style="font-style: italic;">'neumann'</span></td> |
---|
286 | <td style="vertical-align: top;"> <p style="font-style: normal;">Top boundary condition of the |
---|
287 | scalar concentration. </p> <p>Allowed are the |
---|
288 | values <span style="font-style: italic;">'dirichlet'</span> |
---|
289 | (s(k=nz) and s(k=nz+1) do |
---|
290 | not change during the run) and <span style="font-style: italic;">'neumann'</span>. |
---|
291 | With the Neumann boundary |
---|
292 | condition the value of the scalar concentration gradient at the top is |
---|
293 | calculated |
---|
294 | from the initial scalar concentration profile (see <a href="#s_surface">s_surface</a>, <a href="#s_vertical_gradient">s_vertical_gradient</a>) |
---|
295 | by: bc_s_t_val = (s_init(k=nz) - s_init(k=nz-1)) / dzu(nz).<br> |
---|
296 | Using this value (assumed constant during the run) the concentration |
---|
297 | boundary values |
---|
298 | are calculated as </p> <ul> <p style="font-style: normal;">s(k=nz+1) = s(k=nz) + |
---|
299 | bc_s_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up to k=nz the prognostic |
---|
300 | equation for the scalar concentration is |
---|
301 | solved).</p> </td> </tr> <tr><td style="vertical-align: top;"><a name="bc_sa_t"></a><span style="font-weight: bold;">bc_sa_t</span></td><td style="vertical-align: top;">C * 20</td><td style="vertical-align: top;"><span style="font-style: italic;">'neumann'</span></td><td style="vertical-align: top;"><p style="font-style: normal;">Top boundary condition of the salinity. </p> <p>This parameter only comes into effect for ocean runs (see parameter <a href="#ocean">ocean</a>).</p><p style="font-style: normal;">Allowed are the |
---|
302 | values <span style="font-style: italic;">'dirichlet' </span>(sa(k=nz+1) |
---|
303 | does not change during the run) and <span style="font-style: italic;">'neumann'</span> |
---|
304 | (sa(k=nz+1)=sa(k=nz))<span style="font-style: italic;"></span>. <br><br> |
---|
305 | When a constant salinity flux is used at the top boundary (<a href="chapter_4.1.html#top_salinityflux">top_salinityflux</a>), |
---|
306 | <b>bc_sa_t</b> = <span style="font-style: italic;">'neumann'</span> |
---|
307 | must be used, because otherwise the resolved scale may contribute to |
---|
308 | the top flux so that a constant value cannot be guaranteed.</p></td></tr><tr> <td style="vertical-align: top;"> <p><a name="bc_uv_b"></a><b>bc_uv_b</b></p> |
---|
309 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
310 | <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
311 | <td style="vertical-align: top;"> <p style="font-style: normal;">Bottom boundary condition of the |
---|
312 | horizontal velocity components u and v. </p> <p>Allowed |
---|
313 | values are <span style="font-style: italic;">'dirichlet' </span>and |
---|
314 | <span style="font-style: italic;">'neumann'</span>. <b>bc_uv_b</b> |
---|
315 | = <span style="font-style: italic;">'dirichlet'</span> |
---|
316 | yields the |
---|
317 | no-slip condition with u=v=0 at the bottom. Due to the staggered grid |
---|
318 | u(k=0) and v(k=0) are located at z = - 0,5 * <a href="#dz">dz</a> |
---|
319 | (below the bottom), while u(k=1) and v(k=1) are located at z = +0,5 * |
---|
320 | dz. u=v=0 at the bottom is guaranteed using mirror boundary |
---|
321 | condition: </p> <ul> <p style="font-style: normal;">u(k=0) = - u(k=1) and v(k=0) = - |
---|
322 | v(k=1)</p> </ul> <p style="font-style: normal;">The |
---|
323 | Neumann boundary condition |
---|
324 | yields the free-slip condition with u(k=0) = u(k=1) and v(k=0) = |
---|
325 | v(k=1). |
---|
326 | With Prandtl - layer switched on, the free-slip condition is not |
---|
327 | allowed (otherwise the run will be terminated)<font color="#000000">.</font></p> |
---|
328 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="bc_uv_t"></a><b>bc_uv_t</b></p> |
---|
329 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
330 | <td style="vertical-align: top;"><span style="font-style: italic;">'dirichlet'</span></td> |
---|
331 | <td style="vertical-align: top;"> <p style="font-style: normal;">Top boundary condition of the |
---|
332 | horizontal velocity components u and v. </p> <p>Allowed |
---|
333 | values are <span style="font-style: italic;">'dirichlet'</span> |
---|
334 | and <span style="font-style: italic;">'neumann'</span>. |
---|
335 | The |
---|
336 | Dirichlet condition yields u(k=nz+1) = ug(nz+1) and v(k=nz+1) = |
---|
337 | vg(nz+1), |
---|
338 | Neumann condition yields the free-slip condition with u(k=nz+1) = |
---|
339 | u(k=nz) and v(k=nz+1) = v(k=nz) (up to k=nz the prognostic equations |
---|
340 | for the velocities are solved).</p> </td> </tr> <tr><td style="vertical-align: top;"><a name="bottom_salinityflux"></a><span style="font-weight: bold;">bottom_salinityflux</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">0.0</span></td><td style="vertical-align: top;"><p>Kinematic salinity flux near the surface (in psu m/s). </p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).<p>The |
---|
341 | respective salinity flux value is used |
---|
342 | as bottom (horizontally homogeneous) boundary condition for the salinity equation. This additionally requires that a Neumann |
---|
343 | condition must be used for the salinity, which is currently the only available condition.<br> </p> </td></tr><tr> |
---|
344 | <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="building_height"></a>building_height</span></td> |
---|
345 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">50.0</span></td> <td>Height |
---|
346 | of a single building in m.<br> <br> <span style="font-weight: bold;">building_height</span> must |
---|
347 | be less than the height of the model domain. This parameter requires |
---|
348 | the use of <a href="#topography">topography</a> |
---|
349 | = <span style="font-style: italic;">'single_building'</span>.</td> |
---|
350 | </tr> <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="building_length_x"></a>building_length_x</span></td> |
---|
351 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">50.0</span></td> <td><span style="font-style: italic;"></span>Width of a single |
---|
352 | building in m.<br> <br> |
---|
353 | Currently, <span style="font-weight: bold;">building_length_x</span> |
---|
354 | must be at least <span style="font-style: italic;">3 |
---|
355 | * </span><a style="font-style: italic;" href="#dx">dx</a> and no more than <span style="font-style: italic;">( </span><a style="font-style: italic;" href="#nx">nx</a><span style="font-style: italic;"> - 1 ) </span><span style="font-style: italic;"> * <a href="#dx">dx</a> |
---|
356 | </span><span style="font-style: italic;">- <a href="#building_wall_left">building_wall_left</a></span>. |
---|
357 | This parameter requires the use of <a href="#topography">topography</a> |
---|
358 | = <span style="font-style: italic;">'single_building'</span>.</td> |
---|
359 | </tr> <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="building_length_y"></a>building_length_y</span></td> |
---|
360 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">50.0</span></td> <td>Depth |
---|
361 | of a single building in m.<br> <br> |
---|
362 | Currently, <span style="font-weight: bold;">building_length_y</span> |
---|
363 | must be at least <span style="font-style: italic;">3 |
---|
364 | * </span><a style="font-style: italic;" href="#dy">dy</a> and no more than <span style="font-style: italic;">( </span><a style="font-style: italic;" href="#ny">ny</a><span style="font-style: italic;"> - 1 ) </span><span style="font-style: italic;"> * <a href="#dy">dy</a></span><span style="font-style: italic;"> - <a href="#building_wall_south">building_wall_south</a></span>. This parameter requires |
---|
365 | the use of <a href="#topography">topography</a> |
---|
366 | = <span style="font-style: italic;">'single_building'</span>.</td> |
---|
367 | </tr> <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="building_wall_left"></a>building_wall_left</span></td> |
---|
368 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">building centered in x-direction</span></td> |
---|
369 | <td>x-coordinate of the left building wall (distance between the |
---|
370 | left building wall and the left border of the model domain) in m.<br> |
---|
371 | <br> |
---|
372 | Currently, <span style="font-weight: bold;">building_wall_left</span> |
---|
373 | must be at least <span style="font-style: italic;">1 |
---|
374 | * </span><a style="font-style: italic;" href="#dx">dx</a> and less than <span style="font-style: italic;">( <a href="#nx">nx</a> |
---|
375 | - 1 ) * <a href="#dx">dx</a> - <a href="#building_length_x">building_length_x</a></span>. |
---|
376 | This parameter requires the use of <a href="#topography">topography</a> |
---|
377 | = <span style="font-style: italic;">'single_building'</span>.<br> |
---|
378 | <br> |
---|
379 | The default value <span style="font-weight: bold;">building_wall_left</span> |
---|
380 | = <span style="font-style: italic;">( ( <a href="#nx">nx</a> + |
---|
381 | 1 ) * <a href="#dx">dx</a> - <a href="#building_length_x">building_length_x</a> ) / 2</span> |
---|
382 | centers the building in x-direction. </td> </tr> <tr> |
---|
383 | <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="building_wall_south"></a>building_wall_south</span></td> |
---|
384 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;"></span><span style="font-style: italic;">building centered in y-direction</span></td> |
---|
385 | <td>y-coordinate of the South building wall (distance between the |
---|
386 | South building wall and the South border of the model domain) in m.<br> |
---|
387 | <br> |
---|
388 | Currently, <span style="font-weight: bold;">building_wall_south</span> |
---|
389 | must be at least <span style="font-style: italic;">1 |
---|
390 | * </span><a style="font-style: italic;" href="#dy">dy</a> and less than <span style="font-style: italic;">( <a href="#ny">ny</a> |
---|
391 | - 1 ) * <a href="#dy">dy</a> - <a href="#building_length_y">building_length_y</a></span>. |
---|
392 | This parameter requires the use of <a href="#topography">topography</a> |
---|
393 | = <span style="font-style: italic;">'single_building'</span>.<br> |
---|
394 | <br> |
---|
395 | The default value <span style="font-weight: bold;">building_wall_south</span> |
---|
396 | = <span style="font-style: italic;">( ( <a href="#ny">ny</a> + |
---|
397 | 1 ) * <a href="#dy">dy</a> - <a href="#building_length_y">building_length_y</a> ) / 2</span> |
---|
398 | centers the building in y-direction. </td> </tr> <tr> |
---|
399 | <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="cloud_droplets"></a>cloud_droplets</span><br> |
---|
400 | </td> <td style="vertical-align: top;">L<br> </td> |
---|
401 | <td style="vertical-align: top;"><span style="font-style: italic;">.F.</span><br> </td> |
---|
402 | <td style="vertical-align: top;">Parameter to switch on |
---|
403 | usage of cloud droplets.<br> <br> |
---|
404 | Cloud droplets require to use the particle package (<span style="font-weight: bold;">mrun</span>-option <span style="font-family: monospace;">-p particles</span>), |
---|
405 | so in this case a particle corresponds to a droplet. The droplet |
---|
406 | features (number of droplets, initial radius, etc.) can be steered with |
---|
407 | the respective particle parameters (see e.g. <a href="#chapter_4.2.html#radius">radius</a>). |
---|
408 | The real number of initial droplets in a grid cell is equal to the |
---|
409 | initial number of droplets (defined by the particle source parameters <span lang="en-GB"><font face="Thorndale, serif"> </font></span><a href="chapter_4.2.html#pst"><span lang="en-GB"><font face="Thorndale, serif">pst</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#psl"><span lang="en-GB"><font face="Thorndale, serif">psl</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#psr"><span lang="en-GB"><font face="Thorndale, serif">psr</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#pss"><span lang="en-GB"><font face="Thorndale, serif">pss</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#psn"><span lang="en-GB"><font face="Thorndale, serif">psn</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#psb"><span lang="en-GB"><font face="Thorndale, serif">psb</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#pdx"><span lang="en-GB"><font face="Thorndale, serif">pdx</font></span></a><span lang="en-GB"><font face="Thorndale, serif">, </font></span><a href="chapter_4.2.html#pdy"><span lang="en-GB"><font face="Thorndale, serif">pdy</font></span></a> |
---|
410 | <span lang="en-GB"><font face="Thorndale, serif">and |
---|
411 | </font></span><a href="chapter_4.2.html#pdz"><span lang="en-GB"><font face="Thorndale, serif">pdz</font></span></a><span lang="en-GB"></span><span lang="en-GB"></span>) |
---|
412 | times the <a href="#initial_weighting_factor">initial_weighting_factor</a>.<br> |
---|
413 | <br> |
---|
414 | In case of using cloud droplets, the default condensation scheme in |
---|
415 | PALM cannot be used, i.e. <a href="#cloud_physics">cloud_physics</a> |
---|
416 | must be set <span style="font-style: italic;">.F.</span>.<br> |
---|
417 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="cloud_physics"></a><b>cloud_physics</b></p> |
---|
418 | </td> <td style="vertical-align: top;">L<br> </td> |
---|
419 | <td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td> <td style="vertical-align: top;"> <p>Parameter to switch |
---|
420 | on the condensation scheme. </p> |
---|
421 | For <b>cloud_physics =</b> <span style="font-style: italic;">.TRUE.</span>, equations |
---|
422 | for the |
---|
423 | liquid water |
---|
424 | content and the liquid water potential temperature are solved instead |
---|
425 | of those for specific humidity and potential temperature. Note |
---|
426 | that a grid volume is assumed to be either completely saturated or |
---|
427 | completely |
---|
428 | unsaturated (0%-or-100%-scheme). A simple precipitation scheme can |
---|
429 | additionally be switched on with parameter <a href="#precipitation">precipitation</a>. |
---|
430 | Also cloud-top cooling by longwave radiation can be utilized (see <a href="#radiation">radiation</a>)<br> <b><br> |
---|
431 | cloud_physics =</b> <span style="font-style: italic;">.TRUE. |
---|
432 | </span>requires <a href="#humidity">humidity</a> |
---|
433 | =<span style="font-style: italic;"> .TRUE.</span> .<br> |
---|
434 | Detailed information about the condensation scheme is given in the |
---|
435 | description of the <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM-1/Dokumentationen/Cloud_physics/wolken.pdf">cloud |
---|
436 | physics module</a> (pdf-file, only in German).<br> <br> |
---|
437 | This condensation scheme is not allowed if cloud droplets are simulated |
---|
438 | explicitly (see <a href="#cloud_droplets">cloud_droplets</a>).<br> |
---|
439 | </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="conserve_volume_flow"></a>conserve_volume_flow</span></td> |
---|
440 | <td style="vertical-align: top;">L</td> <td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td> <td>Conservation |
---|
441 | of volume flow in x- and y-direction.<br> <br> <span style="font-weight: bold;">conserve_volume_flow</span> |
---|
442 | = <span style="font-style: italic;">.TRUE.</span> |
---|
443 | guarantees that the volume flow through the xz- or yz-cross-section of |
---|
444 | the total model domain remains constant (equal to the initial value at |
---|
445 | t=0) throughout the run.<br> |
---|
446 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="cut_spline_overshoot"></a><b>cut_spline_overshoot</b></p> |
---|
447 | </td> <td style="vertical-align: top;">L</td> |
---|
448 | <td style="vertical-align: top;"><span style="font-style: italic;">.T.</span></td> <td style="vertical-align: top;"> <p>Cuts off of |
---|
449 | so-called overshoots, which can occur with the |
---|
450 | upstream-spline scheme. </p> <p><font color="#000000">The cubic splines tend to overshoot in |
---|
451 | case of discontinuous changes of variables between neighbouring grid |
---|
452 | points.</font><font color="#ff0000"> </font><font color="#000000">This |
---|
453 | may lead to errors in calculating the advection tendency.</font> |
---|
454 | Choice |
---|
455 | of <b>cut_spline_overshoot</b> = <i>.TRUE.</i> |
---|
456 | (switched on by |
---|
457 | default) |
---|
458 | allows variable values not to exceed an interval defined by the |
---|
459 | respective adjacent grid points. This interval can be adjusted |
---|
460 | seperately for every prognostic variable (see initialization parameters |
---|
461 | <a href="#overshoot_limit_e">overshoot_limit_e</a>, <a href="#overshoot_limit_pt">overshoot_limit_pt</a>, <a href="#overshoot_limit_u">overshoot_limit_u</a>, |
---|
462 | etc.). This might be necessary in case that the |
---|
463 | default interval has a non-tolerable effect on the model |
---|
464 | results. </p> <p>Overshoots may also be removed |
---|
465 | using the parameters <a href="#ups_limit_e">ups_limit_e</a>, |
---|
466 | <a href="#ups_limit_pt">ups_limit_pt</a>, |
---|
467 | etc. as well as by applying a long-filter (see <a href="#long_filter_factor">long_filter_factor</a>).</p> |
---|
468 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="damp_level_1d"></a><b>damp_level_1d</b></p> |
---|
469 | </td> <td style="vertical-align: top;">R</td> |
---|
470 | <td style="vertical-align: top;"><span style="font-style: italic;">zu(nz+1)</span></td> |
---|
471 | <td style="vertical-align: top;"> <p>Height where |
---|
472 | the damping layer begins in the 1d-model |
---|
473 | (in m). </p> <p>This parameter is used to |
---|
474 | switch on a damping layer for the |
---|
475 | 1d-model, which is generally needed for the damping of inertia |
---|
476 | oscillations. Damping is done by gradually increasing the value |
---|
477 | of the eddy diffusivities about 10% per vertical grid level |
---|
478 | (starting with the value at the height given by <b>damp_level_1d</b>, |
---|
479 | or possibly from the next grid pint above), i.e. K<sub>m</sub>(k+1) |
---|
480 | = |
---|
481 | 1.1 * K<sub>m</sub>(k). |
---|
482 | The values of K<sub>m</sub> are limited to 10 m**2/s at |
---|
483 | maximum. <br> |
---|
484 | This parameter only comes into effect if the 1d-model is switched on |
---|
485 | for |
---|
486 | the initialization of the 3d-model using <a href="#initializing_actions">initializing_actions</a> |
---|
487 | = <span style="font-style: italic;">'set_1d-model_profiles'</span>. |
---|
488 | <br> </p> </td> </tr> <tr> <td style="vertical-align: top;"><a name="dissipation_1d"></a><span style="font-weight: bold;">dissipation_1d</span><br> |
---|
489 | </td> <td style="vertical-align: top;">C*20<br> |
---|
490 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">'as_in_3d_</span><br style="font-style: italic;"> <span style="font-style: italic;">model'</span><br> </td> |
---|
491 | <td style="vertical-align: top;">Calculation method for |
---|
492 | the energy dissipation term in the TKE equation of the 1d-model.<br> |
---|
493 | <br> |
---|
494 | By default the dissipation is calculated as in the 3d-model using diss |
---|
495 | = (0.19 + 0.74 * l / l_grid) * e**1.5 / l.<br> <br> |
---|
496 | Setting <span style="font-weight: bold;">dissipation_1d</span> |
---|
497 | = <span style="font-style: italic;">'detering'</span> |
---|
498 | forces the dissipation to be calculated as diss = 0.064 * e**1.5 / l.<br> |
---|
499 | </td> </tr> |
---|
500 | <tr> <td style="vertical-align: top;"> <p><a name="dt"></a><b>dt</b></p> </td> |
---|
501 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">variable</span></td> |
---|
502 | <td style="vertical-align: top;"> <p>Time step for |
---|
503 | the 3d-model (in s). </p> <p>By default, (i.e. |
---|
504 | if a Runge-Kutta scheme is used, see <a href="#timestep_scheme">timestep_scheme</a>) |
---|
505 | the value of the time step is calculating after each time step |
---|
506 | (following the time step criteria) and |
---|
507 | used for the next step.</p> <p>If the user assigns <b>dt</b> |
---|
508 | a value, then the time step is |
---|
509 | fixed to this value throughout the whole run (whether it fulfills the |
---|
510 | time step |
---|
511 | criteria or not). However, changes are allowed for restart runs, |
---|
512 | because <b>dt</b> can also be used as a <a href="chapter_4.2.html#dt_laufparameter">run |
---|
513 | parameter</a>. </p> <p>In case that the |
---|
514 | calculated time step meets the condition<br> </p> <ul> |
---|
515 | <p><b>dt</b> < 0.00001 * <a href="chapter_4.2.html#dt_max">dt_max</a> (with dt_max |
---|
516 | = 20.0)</p> </ul> <p>the simulation will be |
---|
517 | aborted. Such situations usually arise |
---|
518 | in case of any numerical problem / instability which causes a |
---|
519 | non-realistic increase of the wind speed. </p> <p>A |
---|
520 | small time step due to a large mean horizontal windspeed |
---|
521 | speed may be enlarged by using a coordinate transformation (see <a href="#galilei_transformation">galilei_transformation</a>), |
---|
522 | in order to spare CPU time.<br> </p> <p>If the |
---|
523 | leapfrog timestep scheme is used (see <a href="#timestep_scheme">timestep_scheme</a>) |
---|
524 | a temporary time step value dt_new is calculated first, with dt_new = <a href="chapter_4.2.html#fcl_factor">cfl_factor</a> |
---|
525 | * dt_crit where dt_crit is the maximum timestep allowed by the CFL and |
---|
526 | diffusion condition. Next it is examined whether dt_new exceeds or |
---|
527 | falls below the |
---|
528 | value of the previous timestep by at |
---|
529 | least +5 % / -2%. If it is smaller, <span style="font-weight: bold;">dt</span> |
---|
530 | = dt_new is immediately used for the next timestep. If it is larger, |
---|
531 | then <span style="font-weight: bold;">dt </span>= |
---|
532 | 1.02 * dt_prev |
---|
533 | (previous timestep) is used as the new timestep, however the time |
---|
534 | step is only increased if the last change of the time step is dated |
---|
535 | back at |
---|
536 | least 30 iterations. If dt_new is located in the interval mentioned |
---|
537 | above, then dt |
---|
538 | does not change at all. By doing so, permanent time step changes as |
---|
539 | well as large |
---|
540 | sudden changes (increases) in the time step are avoided.</p> </td> |
---|
541 | </tr> <tr> <td style="vertical-align: top;"> |
---|
542 | <p><a name="dt_pr_1d"></a><b>dt_pr_1d</b></p> |
---|
543 | </td> <td style="vertical-align: top;">R</td> |
---|
544 | <td style="vertical-align: top;"><span style="font-style: italic;">9999999.9</span></td> |
---|
545 | <td style="vertical-align: top;"> <p>Temporal |
---|
546 | interval of vertical profile output of the 1D-model |
---|
547 | (in s). </p> <p>Data are written in ASCII |
---|
548 | format to file <a href="chapter_3.4.html#LIST_PROFIL_1D">LIST_PROFIL_1D</a>. |
---|
549 | This parameter is only in effect if the 1d-model has been switched on |
---|
550 | for the |
---|
551 | initialization of the 3d-model with <a href="#initializing_actions">initializing_actions</a> |
---|
552 | = <span style="font-style: italic;">'set_1d-model_profiles'</span>.</p> |
---|
553 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="dt_run_control_1d"></a><b>dt_run_control_1d</b></p> |
---|
554 | </td> <td style="vertical-align: top;">R</td> |
---|
555 | <td style="vertical-align: top;"><span style="font-style: italic;">60.0</span></td> <td style="vertical-align: top;"> <p>Temporal interval of |
---|
556 | runtime control output of the 1d-model |
---|
557 | (in s). </p> <p>Data are written in ASCII |
---|
558 | format to file <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>. |
---|
559 | This parameter is only in effect if the 1d-model is switched on for the |
---|
560 | initialization of the 3d-model with <a href="#initializing_actions">initializing_actions</a> |
---|
561 | = <span style="font-style: italic;">'set_1d-model_profiles'</span>.</p> |
---|
562 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="dx"></a><b>dx</b></p> |
---|
563 | </td> <td style="vertical-align: top;">R</td> |
---|
564 | <td style="vertical-align: top;"><span style="font-style: italic;">1.0</span></td> <td style="vertical-align: top;"> <p>Horizontal grid |
---|
565 | spacing along the x-direction (in m). </p> <p>Along |
---|
566 | x-direction only a constant grid spacing is allowed.</p> </td> |
---|
567 | </tr> <tr> <td style="vertical-align: top;"> |
---|
568 | <p><a name="dy"></a><b>dy</b></p> |
---|
569 | </td> <td style="vertical-align: top;">R</td> |
---|
570 | <td style="vertical-align: top;"><span style="font-style: italic;">1.0</span></td> <td style="vertical-align: top;"> <p>Horizontal grid |
---|
571 | spacing along the y-direction (in m). </p> <p>Along y-direction only a constant grid spacing is allowed.</p> </td> |
---|
572 | </tr> <tr> <td style="vertical-align: top;"> |
---|
573 | <p><a name="dz"></a><b>dz</b></p> |
---|
574 | </td> <td style="vertical-align: top;">R</td> |
---|
575 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Vertical grid |
---|
576 | spacing (in m). </p> <p>This parameter must be |
---|
577 | assigned by the user, because no |
---|
578 | default value is given.<br> </p> <p>By default, the |
---|
579 | model uses constant grid spacing along z-direction, but it can be |
---|
580 | stretched using the parameters <a href="#dz_stretch_level">dz_stretch_level</a> |
---|
581 | and <a href="#dz_stretch_factor">dz_stretch_factor</a>. |
---|
582 | In case of stretching, a maximum allowed grid spacing can be given by <a href="#dz_max">dz_max</a>.<br> </p> <p>Assuming |
---|
583 | a constant <span style="font-weight: bold;">dz</span>, |
---|
584 | the scalar levels (zu) are calculated directly by: </p> |
---|
585 | <ul> <p>zu(0) = - dz * 0.5 <br> |
---|
586 | zu(1) = dz * 0.5</p> </ul> <p>The w-levels lie |
---|
587 | half between them: </p> <ul> <p>zw(k) = |
---|
588 | ( zu(k) + zu(k+1) ) * 0.5</p> </ul> </td> </tr> |
---|
589 | <tr><td style="vertical-align: top;"><a name="dz_max"></a><span style="font-weight: bold;">dz_max</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">9999999.9</span></td><td style="vertical-align: top;">Allowed maximum vertical grid |
---|
590 | spacing (in m).<br><br>If the vertical grid is stretched |
---|
591 | (see <a href="#dz_stretch_factor">dz_stretch_factor</a> |
---|
592 | and <a href="#dz_stretch_level">dz_stretch_level</a>), |
---|
593 | <span style="font-weight: bold;">dz_max</span> can |
---|
594 | be used to limit the vertical grid spacing.</td></tr><tr> |
---|
595 | <td style="vertical-align: top;"> <p><a name="dz_stretch_factor"></a><b>dz_stretch_factor</b></p> |
---|
596 | </td> <td style="vertical-align: top;">R</td> |
---|
597 | <td style="vertical-align: top;"><span style="font-style: italic;">1.08</span></td> <td style="vertical-align: top;"> <p>Stretch factor for a |
---|
598 | vertically stretched grid (see <a href="#dz_stretch_level">dz_stretch_level</a>). |
---|
599 | </p> <p>The stretch factor should not exceed a value of |
---|
600 | approx. 1.10 - |
---|
601 | 1.12, otherwise the discretization errors due to the stretched grid not |
---|
602 | negligible any more. (refer Kalnay de Rivas)</p> </td> </tr> |
---|
603 | <tr> <td style="vertical-align: top;"> <p><a name="dz_stretch_level"></a><b>dz_stretch_level</b></p> |
---|
604 | </td> <td style="vertical-align: top;">R</td> |
---|
605 | <td style="vertical-align: top;"><span style="font-style: italic;">100000.0</span><br> </td> |
---|
606 | <td style="vertical-align: top;"> <p>Height level |
---|
607 | above which the grid is to be stretched |
---|
608 | vertically (in m). </p> <p>The vertical grid |
---|
609 | spacings <a href="#dz">dz</a> |
---|
610 | above this level are calculated as </p> <ul> <p><b>dz</b>(k+1) |
---|
611 | = <b>dz</b>(k) * <a href="#dz_stretch_factor">dz_stretch_factor</a></p> |
---|
612 | </ul> <p>and used as spacings for the scalar levels (zu). |
---|
613 | The |
---|
614 | w-levels are then defined as: </p> <ul> <p>zw(k) |
---|
615 | = ( zu(k) + zu(k+1) ) * 0.5</p> </ul> </td> </tr> |
---|
616 | <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="e_min"></a>e_min</span></td> |
---|
617 | <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">0.0</span></td> <td>Minimum |
---|
618 | subgrid-scale TKE in m<sup>2</sup>s<sup>-2</sup>.<br> |
---|
619 | <br>This |
---|
620 | option adds artificial viscosity to the flow by ensuring that |
---|
621 | the |
---|
622 | subgrid-scale TKE does not fall below the minimum threshold <span style="font-weight: bold;">e_min</span>.</td> </tr> |
---|
623 | <tr> <td style="vertical-align: top;"> <p><a name="end_time_1d"></a><b>end_time_1d</b></p> |
---|
624 | </td> <td style="vertical-align: top;">R</td> |
---|
625 | <td style="vertical-align: top;"><span style="font-style: italic;">864000.0</span><br> </td> |
---|
626 | <td style="vertical-align: top;"> <p>Time to be |
---|
627 | simulated for the 1d-model (in s). </p> <p>The |
---|
628 | default value corresponds to a simulated time of 10 days. |
---|
629 | Usually, after such a period the inertia oscillations have completely |
---|
630 | decayed and the solution of the 1d-model can be regarded as stationary |
---|
631 | (see <a href="#damp_level_1d">damp_level_1d</a>). |
---|
632 | This parameter is only in effect if the 1d-model is switched on for the |
---|
633 | initialization of the 3d-model with <a href="#initializing_actions">initializing_actions</a> |
---|
634 | = <span style="font-style: italic;">'set_1d-model_profiles'</span>.</p> |
---|
635 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="fft_method"></a><b>fft_method</b></p> |
---|
636 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
637 | <td style="vertical-align: top;"><span style="font-style: italic;">'system-</span><br style="font-style: italic;"> <span style="font-style: italic;">specific'</span></td> |
---|
638 | <td style="vertical-align: top;"> <p>FFT-method to |
---|
639 | be used.<br> </p> <p><br> |
---|
640 | The fast fourier transformation (FFT) is used for solving the |
---|
641 | perturbation pressure equation with a direct method (see <a href="chapter_4.2.html#psolver">psolver</a>) |
---|
642 | and for calculating power spectra (see optional software packages, |
---|
643 | section <a href="chapter_4.2.html#spectra_package">4.2</a>).</p> |
---|
644 | <p><br> |
---|
645 | By default, system-specific, optimized routines from external |
---|
646 | vendor libraries are used. However, these are available only on certain |
---|
647 | computers and there are more or less severe restrictions concerning the |
---|
648 | number of gridpoints to be used with them.<br> </p> <p>There |
---|
649 | are two other PALM internal methods available on every |
---|
650 | machine (their respective source code is part of the PALM source code):</p> |
---|
651 | <p>1.: The <span style="font-weight: bold;">Temperton</span>-method |
---|
652 | from Clive Temperton (ECWMF) which is computationally very fast and |
---|
653 | switched on with <b>fft_method</b> = <span style="font-style: italic;">'temperton-algorithm'</span>. |
---|
654 | The number of horizontal gridpoints (nx+1, ny+1) to be used with this |
---|
655 | method must be composed of prime factors 2, 3 and 5.<br> </p> |
---|
656 | 2.: The <span style="font-weight: bold;">Singleton</span>-method |
---|
657 | which is very slow but has no restrictions concerning the number of |
---|
658 | gridpoints to be used with, switched on with <b>fft_method</b> |
---|
659 | = <span style="font-style: italic;">'singleton-algorithm'</span>. |
---|
660 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="galilei_transformation"></a><b>galilei_transformation</b></p> |
---|
661 | </td> <td style="vertical-align: top;">L</td> |
---|
662 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
663 | <td style="vertical-align: top;">Application of a |
---|
664 | Galilei-transformation to the |
---|
665 | coordinate |
---|
666 | system of the model.<br><p>With <b>galilei_transformation</b> |
---|
667 | = <i>.T.,</i> a so-called |
---|
668 | Galilei-transformation is switched on which ensures that the coordinate |
---|
669 | system of the model is moved along with the geostrophical wind. |
---|
670 | Alternatively, the model domain can be moved along with the averaged |
---|
671 | horizontal wind (see <a href="#use_ug_for_galilei_tr">use_ug_for_galilei_tr</a>, |
---|
672 | this can and will naturally change in time). With this method, |
---|
673 | numerical inaccuracies of the Piascek - Williams - scheme (concerns in |
---|
674 | particular the momentum advection) are minimized. Beyond that, in the |
---|
675 | majority of cases the lower relative velocities in the moved system |
---|
676 | permit a larger time step (<a href="#dt">dt</a>). |
---|
677 | Switching the transformation on is only worthwhile if the geostrophical |
---|
678 | wind (ug, vg) |
---|
679 | and the averaged horizontal wind clearly deviate from the value 0. In |
---|
680 | each case, the distance the coordinate system has been moved is written |
---|
681 | to the file <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>. |
---|
682 | </p> <p>Non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a> |
---|
683 | and <a href="#bc_ns">bc_ns</a>), the specification |
---|
684 | of a gestrophic |
---|
685 | wind that is not constant with height |
---|
686 | as well as e.g. stationary inhomogeneities at the bottom boundary do |
---|
687 | not allow the use of this transformation.</p> </td> </tr> |
---|
688 | <tr> <td style="vertical-align: top;"> <p><a name="grid_matching"></a><b>grid_matching</b></p> |
---|
689 | </td> <td style="vertical-align: top;">C * 6</td> |
---|
690 | <td style="vertical-align: top;"><span style="font-style: italic;">'match'</span></td> <td style="vertical-align: top;">Variable to adjust the |
---|
691 | subdomain |
---|
692 | sizes in parallel runs.<br> <br> |
---|
693 | For <b>grid_matching</b> = <span style="font-style: italic;">'strict'</span>, |
---|
694 | the subdomains are forced to have an identical |
---|
695 | size on all processors. In this case the processor numbers in the |
---|
696 | respective directions of the virtual processor net must fulfill certain |
---|
697 | divisor conditions concerning the grid point numbers in the three |
---|
698 | directions (see <a href="#nx">nx</a>, <a href="#ny">ny</a> |
---|
699 | and <a href="#nz">nz</a>). |
---|
700 | Advantage of this method is that all PEs bear the same computational |
---|
701 | load.<br> <br> |
---|
702 | There is no such restriction by default, because then smaller |
---|
703 | subdomains are allowed on those processors which |
---|
704 | form the right and/or north boundary of the virtual processor grid. On |
---|
705 | all other processors the subdomains are of same size. Whether smaller |
---|
706 | subdomains are actually used, depends on the number of processors and |
---|
707 | the grid point numbers used. Information about the respective settings |
---|
708 | are given in file <a href="file:///home/raasch/public_html/PALM_group/home/raasch/public_html/PALM_group/doc/app/chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>.<br> |
---|
709 | <br> |
---|
710 | When using a multi-grid method for solving the Poisson equation (see <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">psolver</a>) |
---|
711 | only <b>grid_matching</b> = <span style="font-style: italic;">'strict'</span> |
---|
712 | is allowed.<br> <br> <b>Note:</b><br> |
---|
713 | In some cases for small processor numbers there may be a very bad load |
---|
714 | balancing among the |
---|
715 | processors which may reduce the performance of the code.</td> </tr> |
---|
716 | <tr> <td style="vertical-align: top;"><a name="inflow_disturbance_begin"></a><b>inflow_disturbance_<br> |
---|
717 | begin</b></td> <td style="vertical-align: top;">I</td> |
---|
718 | <td style="vertical-align: top;"><span style="font-style: italic;">MIN(10,</span><br style="font-style: italic;"> <span style="font-style: italic;">nx/2 or ny/2)</span></td> |
---|
719 | <td style="vertical-align: top;">Lower |
---|
720 | limit of the horizontal range for which random perturbations are to be |
---|
721 | imposed on the horizontal velocity field (gridpoints).<br> <br> |
---|
722 | If non-cyclic lateral boundary conditions are used (see <a href="#bc_lr">bc_lr</a> |
---|
723 | or <a href="#bc_ns">bc_ns</a>), |
---|
724 | this parameter gives the gridpoint number (counted horizontally from |
---|
725 | the inflow) from which on perturbations are imposed on the |
---|
726 | horizontal velocity field. Perturbations must be switched on with |
---|
727 | parameter <a href="chapter_4.2.html#create_disturbances">create_disturbances</a>.</td> |
---|
728 | </tr> <tr> <td style="vertical-align: top;"><a name="inflow_disturbance_end"></a><b>inflow_disturbance_<br> |
---|
729 | end</b></td> <td style="vertical-align: top;">I</td> |
---|
730 | <td style="vertical-align: top;"><span style="font-style: italic;">MIN(100,</span><br style="font-style: italic;"> <span style="font-style: italic;">3/4*nx or</span><br style="font-style: italic;"> <span style="font-style: italic;">3/4*ny)</span></td> <td style="vertical-align: top;">Upper |
---|
731 | limit of the horizontal range for which random perturbations are |
---|
732 | to be imposed on the horizontal velocity field (gridpoints).<br> <br> |
---|
733 | If non-cyclic lateral boundary conditions are used (see <a href="#bc_lr">bc_lr</a> |
---|
734 | or <a href="#bc_ns">bc_ns</a>), |
---|
735 | this parameter gives the gridpoint number (counted horizontally from |
---|
736 | the inflow) unto which perturbations are imposed on the |
---|
737 | horizontal |
---|
738 | velocity field. Perturbations must be switched on with parameter <a href="chapter_4.2.html#create_disturbances">create_disturbances</a>.</td> |
---|
739 | </tr> <tr> <td style="vertical-align: top;"> |
---|
740 | <p><a name="initializing_actions"></a><b>initializing_actions</b></p> |
---|
741 | </td> <td style="vertical-align: top;">C * 100</td> |
---|
742 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p style="font-style: normal;">Initialization actions |
---|
743 | to be carried out. </p> <p style="font-style: normal;">This parameter does not have a |
---|
744 | default value and therefore must be assigned with each model run. For |
---|
745 | restart runs <b>initializing_actions</b> = <span style="font-style: italic;">'read_restart_data'</span> |
---|
746 | must be set. For the initial run of a job chain the following values |
---|
747 | are allowed: </p> <p style="font-style: normal;"><span style="font-style: italic;">'set_constant_profiles'</span> |
---|
748 | </p> <ul> <p>A horizontal wind profile consisting |
---|
749 | of linear sections (see <a href="#ug_surface">ug_surface</a>, |
---|
750 | <a href="#ug_vertical_gradient">ug_vertical_gradient</a>, |
---|
751 | <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a> |
---|
752 | and <a href="#vg_surface">vg_surface</a>, <a href="#vg_vertical_gradient">vg_vertical_gradient</a>, |
---|
753 | <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>, |
---|
754 | respectively) as well as a vertical temperature (humidity) profile |
---|
755 | consisting of |
---|
756 | linear sections (see <a href="#pt_surface">pt_surface</a>, |
---|
757 | <a href="#pt_vertical_gradient">pt_vertical_gradient</a>, |
---|
758 | <a href="#q_surface">q_surface</a> |
---|
759 | and <a href="#q_vertical_gradient">q_vertical_gradient</a>) |
---|
760 | are assumed as initial profiles. The subgrid-scale TKE is set to 0 but K<sub>m</sub> |
---|
761 | and K<sub>h</sub> are set to very small values because |
---|
762 | otherwise no TKE |
---|
763 | would be generated.</p> </ul> <p style="font-style: italic;">'set_1d-model_profiles' </p> |
---|
764 | <ul> <p>The arrays of the 3d-model are initialized with |
---|
765 | the |
---|
766 | (stationary) solution of the 1d-model. These are the variables e, kh, |
---|
767 | km, u, v and with Prandtl layer switched on rif, us, usws, vsws. The |
---|
768 | temperature (humidity) profile consisting of linear sections is set as |
---|
769 | for 'set_constant_profiles' and assumed as constant in time within the |
---|
770 | 1d-model. For steering of the 1d-model a set of parameters with suffix |
---|
771 | "_1d" (e.g. <a href="#end_time_1d">end_time_1d</a>, |
---|
772 | <a href="#damp_level_1d">damp_level_1d</a>) |
---|
773 | is available.</p> </ul> <p><span style="font-style: italic;">'by_user'</span></p><p style="margin-left: 40px;">The initialization of the arrays |
---|
774 | of the 3d-model is under complete control of the user and has to be |
---|
775 | done in routine <a href="chapter_3.5.1.html#user_init_3d_model">user_init_3d_model</a> |
---|
776 | of the user-interface.<span style="font-style: italic;"></span></p><p><span style="font-style: italic;">'initialize_vortex'</span> |
---|
777 | </p> <div style="margin-left: 40px;">The initial |
---|
778 | velocity field of the |
---|
779 | 3d-model corresponds to a |
---|
780 | Rankine-vortex with vertical axis. This setting may be used to test |
---|
781 | advection schemes. Free-slip boundary conditions for u and v (see <a href="#bc_uv_b">bc_uv_b</a>, <a href="#bc_uv_t">bc_uv_t</a>) |
---|
782 | are necessary. In order not to distort the vortex, an initial |
---|
783 | horizontal wind profile constant |
---|
784 | with height is necessary (to be set by <b>initializing_actions</b> |
---|
785 | = <span style="font-style: italic;">'set_constant_profiles'</span>) |
---|
786 | and some other conditions have to be met (neutral stratification, |
---|
787 | diffusion must be |
---|
788 | switched off, see <a href="#km_constant">km_constant</a>). |
---|
789 | The center of the vortex is located at jc = (nx+1)/2. It |
---|
790 | extends from k = 0 to k = nz+1. Its radius is 8 * <a href="#dx">dx</a> |
---|
791 | and the exponentially decaying part ranges to 32 * <a href="#dx">dx</a> |
---|
792 | (see init_rankine.f90). </div> <p><span style="font-style: italic;">'initialize_ptanom'</span> |
---|
793 | </p> <ul> <p>A 2d-Gauss-like shape disturbance |
---|
794 | (x,y) is added to the |
---|
795 | initial temperature field with radius 10.0 * <a href="#dx">dx</a> |
---|
796 | and center at jc = (nx+1)/2. This may be used for tests of scalar |
---|
797 | advection schemes |
---|
798 | (see <a href="#scalar_advec">scalar_advec</a>). |
---|
799 | Such tests require a horizontal wind profile constant with hight and |
---|
800 | diffusion |
---|
801 | switched off (see <span style="font-style: italic;">'initialize_vortex'</span>). |
---|
802 | Additionally, the buoyancy term |
---|
803 | must be switched of in the equation of motion for w (this |
---|
804 | requires the user to comment out the call of <span style="font-family: monospace;">buoyancy</span> in the |
---|
805 | source code of <span style="font-family: monospace;">prognostic_equations.f90</span>).</p> |
---|
806 | </ul> <p style="font-style: normal;">Values may be |
---|
807 | combined, e.g. <b>initializing_actions</b> = <span style="font-style: italic;">'set_constant_profiles |
---|
808 | initialize_vortex'</span>, but the values of <span style="font-style: italic;">'set_constant_profiles'</span>, |
---|
809 | <span style="font-style: italic;">'set_1d-model_profiles'</span> |
---|
810 | , and <span style="font-style: italic;">'by_user'</span> |
---|
811 | must not be given at the same time.</p> <p style="font-style: italic;"> </p> </td> </tr> |
---|
812 | <tr> <td style="vertical-align: top;"> <p><a name="km_constant"></a><b>km_constant</b></p> |
---|
813 | </td> <td style="vertical-align: top;">R</td> |
---|
814 | <td style="vertical-align: top;"><i>variable<br> |
---|
815 | (computed from TKE)</i></td> <td style="vertical-align: top;"> <p>Constant eddy |
---|
816 | diffusivities are used (laminar |
---|
817 | simulations). </p> <p>If this parameter is |
---|
818 | specified, both in the 1d and in the |
---|
819 | 3d-model constant values for the eddy diffusivities are used in |
---|
820 | space and time with K<sub>m</sub> = <b>km_constant</b> |
---|
821 | and K<sub>h</sub> = K<sub>m</sub> / <a href="chapter_4.2.html#prandtl_number">prandtl_number</a>. |
---|
822 | The prognostic equation for the subgrid-scale TKE is switched off. |
---|
823 | Constant eddy diffusivities are only allowed with the Prandtl layer (<a href="#prandtl_layer">prandtl_layer</a>) |
---|
824 | switched off.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="km_damp_max"></a><b>km_damp_max</b></p> |
---|
825 | </td> <td style="vertical-align: top;">R</td> |
---|
826 | <td style="vertical-align: top;"><span style="font-style: italic;">0.5*(dx |
---|
827 | or dy)</span></td> <td style="vertical-align: top;">Maximum |
---|
828 | diffusivity used for filtering the velocity field in the vicinity of |
---|
829 | the outflow (in m<sup>2</sup>/s).<br> <br> |
---|
830 | When using non-cyclic lateral boundaries (see <a href="#bc_lr">bc_lr</a> |
---|
831 | or <a href="#bc_ns">bc_ns</a>), |
---|
832 | a smoothing has to be applied to the |
---|
833 | velocity field in the vicinity of the outflow in order to suppress any |
---|
834 | reflections of outgoing disturbances. Smoothing is done by increasing |
---|
835 | the eddy diffusivity along the horizontal direction which is |
---|
836 | perpendicular to the outflow boundary. Only velocity components |
---|
837 | parallel to the outflow boundary are filtered (e.g. v and w, if the |
---|
838 | outflow is along x). Damping is applied from the bottom to the top of |
---|
839 | the domain.<br> <br> |
---|
840 | The horizontal range of the smoothing is controlled by <a href="#outflow_damping_width">outflow_damping_width</a> |
---|
841 | which defines the number of gridpoints (counted from the outflow |
---|
842 | boundary) from where on the smoothing is applied. Starting from that |
---|
843 | point, the eddy diffusivity is linearly increased (from zero to its |
---|
844 | maximum value given by <span style="font-weight: bold;">km_damp_max</span>) |
---|
845 | until half of the damping range width, from where it remains constant |
---|
846 | up to the outflow boundary. If at a certain grid point the eddy |
---|
847 | diffusivity calculated from the flow field is larger than as described |
---|
848 | above, it is used instead.<br> <br> |
---|
849 | The default value of <span style="font-weight: bold;">km_damp_max</span> |
---|
850 | has been empirically proven to be sufficient.</td> </tr> <tr> |
---|
851 | <td style="vertical-align: top;"> <p><a name="long_filter_factor"></a><b>long_filter_factor</b></p> |
---|
852 | </td> <td style="vertical-align: top;">R</td> |
---|
853 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
854 | <td style="vertical-align: top;"> <p>Filter factor |
---|
855 | for the so-called Long-filter.<br> </p> <p><br> |
---|
856 | This filter very efficiently |
---|
857 | eliminates 2-delta-waves sometimes cauesed by the upstream-spline |
---|
858 | scheme (see Mahrer and |
---|
859 | Pielke, 1978: Mon. Wea. Rev., 106, 818-830). It works in all three |
---|
860 | directions in space. A value of <b>long_filter_factor</b> |
---|
861 | = <i>0.01</i> |
---|
862 | sufficiently removes the small-scale waves without affecting the |
---|
863 | longer waves.<br> </p> <p>By default, the filter is |
---|
864 | switched off (= <i>0.0</i>). |
---|
865 | It is exclusively applied to the tendencies calculated by the |
---|
866 | upstream-spline scheme (see <a href="#momentum_advec">momentum_advec</a> |
---|
867 | and <a href="#scalar_advec">scalar_advec</a>), |
---|
868 | not to the prognostic variables themselves. At the bottom and top |
---|
869 | boundary of the model domain the filter effect for vertical |
---|
870 | 2-delta-waves is reduced. There, the amplitude of these waves is only |
---|
871 | reduced by approx. 50%, otherwise by nearly 100%. <br> |
---|
872 | Filter factors with values > <i>0.01</i> also |
---|
873 | reduce the amplitudes |
---|
874 | of waves with wavelengths longer than 2-delta (see the paper by Mahrer |
---|
875 | and |
---|
876 | Pielke, quoted above). </p> </td> </tr> <tr><td style="vertical-align: top;"><a name="loop_optimization"></a><span style="font-weight: bold;">loop_optimization</span></td><td style="vertical-align: top;">C*16</td><td style="vertical-align: top;"><span style="font-style: italic;">see right</span></td><td>Method used to optimize loops for solving the prognostic equations .<br><br>By |
---|
877 | default, the optimization method depends on the host on which PALM is |
---|
878 | running. On machines with vector-type CPUs, single 3d-loops are used to |
---|
879 | calculate each tendency term of each prognostic equation, while on all |
---|
880 | other machines, all prognostic equations are solved within one big loop |
---|
881 | over the two horizontal indices<span style="font-family: Courier New,Courier,monospace;"> i </span>and<span style="font-family: Courier New,Courier,monospace;"> j </span>(giving a good cache uitilization).<br><br>The default behaviour can be changed by setting either <span style="font-weight: bold;">loop_optimization</span> = <span style="font-style: italic;">'vector'</span> or <span style="font-weight: bold;">loop_optimization</span> = <span style="font-style: italic;">'cache'</span>.</td></tr><tr> |
---|
882 | <td style="vertical-align: top;"><a name="mixing_length_1d"></a><span style="font-weight: bold;">mixing_length_1d</span><br> |
---|
883 | </td> <td style="vertical-align: top;">C*20<br> |
---|
884 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">'as_in_3d_</span><br style="font-style: italic;"> <span style="font-style: italic;">model'</span><br> </td> |
---|
885 | <td style="vertical-align: top;">Mixing length used in the |
---|
886 | 1d-model.<br> <br> |
---|
887 | By default the mixing length is calculated as in the 3d-model (i.e. it |
---|
888 | depends on the grid spacing).<br> <br> |
---|
889 | By setting <span style="font-weight: bold;">mixing_length_1d</span> |
---|
890 | = <span style="font-style: italic;">'blackadar'</span>, |
---|
891 | the so-called Blackadar mixing length is used (l = kappa * z / ( 1 + |
---|
892 | kappa * z / lambda ) with the limiting value lambda = 2.7E-4 * u_g / f).<br> |
---|
893 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="humidity"></a><b>humidity</b></p> |
---|
894 | </td> <td style="vertical-align: top;">L</td> |
---|
895 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
896 | <td style="vertical-align: top;"> <p>Parameter to |
---|
897 | switch on the prognostic equation for specific |
---|
898 | humidity q.<br> </p> <p>The initial vertical |
---|
899 | profile of q can be set via parameters <a href="chapter_4.1.html#q_surface">q_surface</a>, <a href="chapter_4.1.html#q_vertical_gradient">q_vertical_gradient</a> |
---|
900 | and <a href="chapter_4.1.html#q_vertical_gradient_level">q_vertical_gradient_level</a>. |
---|
901 | Boundary conditions can be set via <a href="chapter_4.1.html#q_surface_initial_change">q_surface_initial_change</a> |
---|
902 | and <a href="chapter_4.1.html#surface_waterflux">surface_waterflux</a>.<br> |
---|
903 | </p> |
---|
904 | If the condensation scheme is switched on (<a href="chapter_4.1.html#cloud_physics">cloud_physics</a> |
---|
905 | = .TRUE.), q becomes the total liquid water content (sum of specific |
---|
906 | humidity and liquid water content).</td> </tr> |
---|
907 | <tr> <td style="vertical-align: top;"> <p><a name="momentum_advec"></a><b>momentum_advec</b></p> |
---|
908 | </td> <td style="vertical-align: top;">C * 10</td> |
---|
909 | <td style="vertical-align: top;"><i>'pw-scheme'</i></td> |
---|
910 | <td style="vertical-align: top;"> <p>Advection |
---|
911 | scheme to be used for the momentum equations.<br> <br> |
---|
912 | The user can choose between the following schemes:<br> |
---|
913 | <br> <br> <span style="font-style: italic;">'pw-scheme'</span><br> |
---|
914 | </p> <div style="margin-left: 40px;">The scheme of |
---|
915 | Piascek and |
---|
916 | Williams (1970, J. Comp. Phys., 6, |
---|
917 | 392-405) with central differences in the form C3 is used.<br> |
---|
918 | If intermediate Euler-timesteps are carried out in case of <a href="#timestep_scheme">timestep_scheme</a> |
---|
919 | = <span style="font-style: italic;">'leapfrog+euler'</span> |
---|
920 | the |
---|
921 | advection scheme is - for the Euler-timestep - automatically switched |
---|
922 | to an upstream-scheme.<br> </div> <p> </p> <p><span style="font-style: italic;">'ups-scheme'</span><br> |
---|
923 | </p> <div style="margin-left: 40px;">The |
---|
924 | upstream-spline scheme is |
---|
925 | used |
---|
926 | (see Mahrer and Pielke, |
---|
927 | 1978: Mon. Wea. Rev., 106, 818-830). In opposite to the |
---|
928 | Piascek-Williams scheme, this is characterized by much better numerical |
---|
929 | features (less numerical diffusion, better preservation of flow |
---|
930 | structures, e.g. vortices), but computationally it is much more |
---|
931 | expensive. In |
---|
932 | addition, the use of the Euler-timestep scheme is mandatory (<a href="#timestep_scheme">timestep_scheme</a> |
---|
933 | = <span style="font-style: italic;">'</span><i>euler'</i>), |
---|
934 | i.e. the |
---|
935 | timestep accuracy is only of first order. |
---|
936 | For this reason the advection of scalar variables (see <a href="#scalar_advec">scalar_advec</a>) |
---|
937 | should then also be carried out with the upstream-spline scheme, |
---|
938 | because otherwise the scalar variables would |
---|
939 | be subject to large numerical diffusion due to the upstream |
---|
940 | scheme. </div> <p style="margin-left: 40px;">Since |
---|
941 | the cubic splines used tend |
---|
942 | to overshoot under |
---|
943 | certain circumstances, this effect must be adjusted by suitable |
---|
944 | filtering and smoothing (see <a href="#cut_spline_overshoot">cut_spline_overshoot</a>, |
---|
945 | <a href="#long_filter_factor">long_filter_factor</a>, |
---|
946 | <a href="#ups_limit_pt">ups_limit_pt</a>, <a href="#ups_limit_u">ups_limit_u</a>, <a href="#ups_limit_v">ups_limit_v</a>, <a href="#ups_limit_w">ups_limit_w</a>). |
---|
947 | This is always neccessary for runs with stable stratification, |
---|
948 | even if this stratification appears only in parts of the model domain.<br> |
---|
949 | </p> <div style="margin-left: 40px;">With stable |
---|
950 | stratification the |
---|
951 | upstream-spline scheme also |
---|
952 | produces gravity waves with large amplitude, which must be |
---|
953 | suitably damped (see <a href="chapter_4.2.html#rayleigh_damping_factor">rayleigh_damping_factor</a>).<br> |
---|
954 | <br> <span style="font-weight: bold;">Important: </span>The |
---|
955 | upstream-spline scheme is not implemented for humidity and passive |
---|
956 | scalars (see <a href="#humidity">humidity</a> |
---|
957 | and <a href="#passive_scalar">passive_scalar</a>) |
---|
958 | and requires the use of a 2d-domain-decomposition. The last conditions |
---|
959 | severely restricts code optimization on several machines leading to |
---|
960 | very long execution times! The scheme is also not allowed for |
---|
961 | non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a> |
---|
962 | and <a href="#bc_ns">bc_ns</a>).</div> </td> |
---|
963 | </tr> <tr> <td style="vertical-align: top;"><a name="netcdf_precision"></a><span style="font-weight: bold;">netcdf_precision</span><br> |
---|
964 | </td> <td style="vertical-align: top;">C*20<br> |
---|
965 | (10)<br> </td> <td style="vertical-align: top;"><span style="font-style: italic;">single preci-</span><br style="font-style: italic;"> <span style="font-style: italic;">sion for all</span><br style="font-style: italic;"> <span style="font-style: italic;">output quan-</span><br style="font-style: italic;"> <span style="font-style: italic;">tities</span><br> </td> |
---|
966 | <td style="vertical-align: top;">Defines the accuracy of |
---|
967 | the NetCDF output.<br> <br> |
---|
968 | By default, all NetCDF output data (see <a href="chapter_4.2.html#data_output_format">data_output_format</a>) |
---|
969 | have single precision (4 byte) accuracy. Double precision (8 |
---|
970 | byte) can be choosen alternatively.<br> |
---|
971 | Accuracy for the different output data (cross sections, 3d-volume data, |
---|
972 | spectra, etc.) can be set independently.<br> <span style="font-style: italic;">'<out>_NF90_REAL4'</span> |
---|
973 | (single precision) or <span style="font-style: italic;">'<out>_NF90_REAL8'</span> |
---|
974 | (double precision) are the two principally allowed values for <span style="font-weight: bold;">netcdf_precision</span>, |
---|
975 | where the string <span style="font-style: italic;">'<out>' |
---|
976 | </span>can be chosen out of the following list:<br> <br> |
---|
977 | <table style="text-align: left; width: 284px; height: 234px;" border="1" cellpadding="2" cellspacing="2"> <tbody> |
---|
978 | <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'xy'</span><br> </td> |
---|
979 | <td style="vertical-align: top;">horizontal cross section<br> |
---|
980 | </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'xz'</span><br> </td> |
---|
981 | <td style="vertical-align: top;">vertical (xz) cross |
---|
982 | section<br> </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'yz'</span><br> </td> |
---|
983 | <td style="vertical-align: top;">vertical (yz) cross |
---|
984 | section<br> </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'2d'</span><br> </td> |
---|
985 | <td style="vertical-align: top;">all cross sections<br> |
---|
986 | </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'3d'</span><br> </td> |
---|
987 | <td style="vertical-align: top;">volume data<br> </td> |
---|
988 | </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'pr'</span><br> </td> |
---|
989 | <td style="vertical-align: top;">vertical profiles<br> |
---|
990 | </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'ts'</span><br> </td> |
---|
991 | <td style="vertical-align: top;">time series, particle |
---|
992 | time series<br> </td> </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'sp'</span><br> </td> |
---|
993 | <td style="vertical-align: top;">spectra<br> </td> |
---|
994 | </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'prt'</span><br> </td> |
---|
995 | <td style="vertical-align: top;">particles<br> </td> |
---|
996 | </tr> <tr> <td style="vertical-align: top;"><span style="font-style: italic;">'all'</span><br> </td> |
---|
997 | <td style="vertical-align: top;">all output quantities<br> |
---|
998 | </td> </tr> </tbody> </table> <br> <span style="font-weight: bold;">Example:</span><br> |
---|
999 | If all cross section data and the particle data shall be output in |
---|
1000 | double precision and all other quantities in single precision, then <span style="font-weight: bold;">netcdf_precision</span> = <span style="font-style: italic;">'2d_NF90_REAL8'</span>, <span style="font-style: italic;">'prt_NF90_REAL8'</span> |
---|
1001 | has to be assigned.<br> </td> </tr> |
---|
1002 | <tr> <td style="vertical-align: top;"> <p><a name="npex"></a><b>npex</b></p> </td> |
---|
1003 | <td style="vertical-align: top;">I</td> <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Number of processors |
---|
1004 | along x-direction of the virtual |
---|
1005 | processor |
---|
1006 | net. </p> <p>For parallel runs, the total |
---|
1007 | number of processors to be used |
---|
1008 | is given by |
---|
1009 | the <span style="font-weight: bold;">mrun</span> |
---|
1010 | option <a href="http://www.muk.uni-hannover.de/software/mrun_beschreibung.html#Opt-X">-X</a>. |
---|
1011 | By default, depending on the type of the parallel computer, PALM |
---|
1012 | generates a 1d processor |
---|
1013 | net (domain decomposition along x, <span style="font-weight: bold;">npey</span> |
---|
1014 | = <span style="font-style: italic;">1</span>) or a |
---|
1015 | 2d-net (this is |
---|
1016 | favored on machines with fast communication network). In case of a |
---|
1017 | 2d-net, it is tried to make it more or less square-shaped. If, for |
---|
1018 | example, 16 processors are assigned (-X 16), a 4 * 4 processor net is |
---|
1019 | generated (<span style="font-weight: bold;">npex</span> |
---|
1020 | = <span style="font-style: italic;">4</span>, <span style="font-weight: bold;">npey</span> |
---|
1021 | = <span style="font-style: italic;">4</span>). |
---|
1022 | This choice is optimal for square total domains (<a href="#nx">nx</a> |
---|
1023 | = <a href="#ny">ny</a>), |
---|
1024 | since then the number of ghost points at the lateral boundarys of |
---|
1025 | the subdomains is minimal. If <span style="font-weight: bold;">nx</span> |
---|
1026 | nd <span style="font-weight: bold;">ny</span> |
---|
1027 | differ extremely, the |
---|
1028 | processor net should be manually adjusted using adequate values for <span style="font-weight: bold;">npex</span> and <span style="font-weight: bold;">npey</span>. </p> |
---|
1029 | <p><b>Important:</b> The value of <span style="font-weight: bold;">npex</span> * <span style="font-weight: bold;">npey</span> must exactly |
---|
1030 | correspond to the |
---|
1031 | value assigned by the <span style="font-weight: bold;">mrun</span>-option |
---|
1032 | <tt>-X</tt>. |
---|
1033 | Otherwise the model run will abort with a corresponding error |
---|
1034 | message. <br> |
---|
1035 | Additionally, the specification of <span style="font-weight: bold;">npex</span> |
---|
1036 | and <span style="font-weight: bold;">npey</span> |
---|
1037 | may of course |
---|
1038 | override the default setting for the domain decomposition (1d or 2d) |
---|
1039 | which may have a significant (negative) effect on the code performance. |
---|
1040 | </p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="npey"></a><b>npey</b></p> |
---|
1041 | </td> <td style="vertical-align: top;">I</td> |
---|
1042 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Number of processors |
---|
1043 | along y-direction of the virtual |
---|
1044 | processor |
---|
1045 | net. </p> <p>For further information see <a href="#npex">npex</a>.</p> </td> </tr> |
---|
1046 | <tr> <td style="vertical-align: top;"> <p><a name="nsor_ini"></a><b>nsor_ini</b></p> |
---|
1047 | </td> <td style="vertical-align: top;">I</td> |
---|
1048 | <td style="vertical-align: top;"><i>100</i></td> |
---|
1049 | <td style="vertical-align: top;"> <p>Initial number |
---|
1050 | of iterations with the SOR algorithm. </p> <p>This |
---|
1051 | parameter is only effective if the SOR algorithm was |
---|
1052 | selected as the pressure solver scheme (<a href="chapter_4.2.html#psolver">psolver</a> |
---|
1053 | = <span style="font-style: italic;">'sor'</span>) |
---|
1054 | and specifies the |
---|
1055 | number of initial iterations of the SOR |
---|
1056 | scheme (at t = 0). The number of subsequent iterations at the following |
---|
1057 | timesteps is determined |
---|
1058 | with the parameter <a href="#nsor">nsor</a>. |
---|
1059 | Usually <b>nsor</b> < <b>nsor_ini</b>, |
---|
1060 | since in each case |
---|
1061 | subsequent calls to <a href="chapter_4.2.html#psolver">psolver</a> |
---|
1062 | use the solution of the previous call as initial value. Suitable |
---|
1063 | test runs should determine whether sufficient convergence of the |
---|
1064 | solution is obtained with the default value and if necessary the value |
---|
1065 | of <b>nsor_ini</b> should be changed.</p> </td> |
---|
1066 | </tr> <tr> <td style="vertical-align: top;"> |
---|
1067 | <p><a name="nx"></a><b>nx</b></p> |
---|
1068 | </td> <td style="vertical-align: top;">I</td> |
---|
1069 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Number of grid |
---|
1070 | points in x-direction. </p> <p>A value for this |
---|
1071 | parameter must be assigned. Since the lower |
---|
1072 | array bound in PALM |
---|
1073 | starts with i = 0, the actual number of grid points is equal to <b>nx+1</b>. |
---|
1074 | In case of cyclic boundary conditions along x, the domain size is (<b>nx+1</b>)* |
---|
1075 | <a href="#dx">dx</a>.</p> <p>For |
---|
1076 | parallel runs, in case of <a href="#grid_matching">grid_matching</a> |
---|
1077 | = <span style="font-style: italic;">'strict'</span>, |
---|
1078 | <b>nx+1</b> must |
---|
1079 | be an integral multiple |
---|
1080 | of the processor numbers (see <a href="#npex">npex</a> |
---|
1081 | and <a href="#npey">npey</a>) |
---|
1082 | along x- as well as along y-direction (due to data |
---|
1083 | transposition restrictions).</p> </td> </tr> <tr> |
---|
1084 | <td style="vertical-align: top;"> <p><a name="ny"></a><b>ny</b></p> |
---|
1085 | </td> <td style="vertical-align: top;">I</td> |
---|
1086 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Number of grid |
---|
1087 | points in y-direction. </p> <p>A value for this |
---|
1088 | parameter must be assigned. Since the lower |
---|
1089 | array bound in PALM starts with i = 0, the actual number of grid points |
---|
1090 | is equal to <b>ny+1</b>. In case of cyclic boundary |
---|
1091 | conditions along |
---|
1092 | y, the domain size is (<b>ny+1</b>) * <a href="#dy">dy</a>.</p> |
---|
1093 | <p>For parallel runs, in case of <a href="#grid_matching">grid_matching</a> |
---|
1094 | = <span style="font-style: italic;">'strict'</span>, |
---|
1095 | <b>ny+1</b> must |
---|
1096 | be an integral multiple |
---|
1097 | of the processor numbers (see <a href="#npex">npex</a> |
---|
1098 | and <a href="#npey">npey</a>) |
---|
1099 | along y- as well as along x-direction (due to data |
---|
1100 | transposition restrictions).</p> </td> </tr> <tr> |
---|
1101 | <td style="vertical-align: top;"> <p><a name="nz"></a><b>nz</b></p> |
---|
1102 | </td> <td style="vertical-align: top;">I</td> |
---|
1103 | <td style="vertical-align: top;"><br> </td> <td style="vertical-align: top;"> <p>Number of grid |
---|
1104 | points in z-direction. </p> <p>A value for this |
---|
1105 | parameter must be assigned. Since the lower |
---|
1106 | array bound in PALM |
---|
1107 | starts with k = 0 and since one additional grid point is added at the |
---|
1108 | top boundary (k = <b>nz+1</b>), the actual number of grid |
---|
1109 | points is <b>nz+2</b>. |
---|
1110 | However, the prognostic equations are only solved up to <b>nz</b> |
---|
1111 | (u, |
---|
1112 | v) |
---|
1113 | or up to <b>nz-1</b> (w, scalar quantities). The top |
---|
1114 | boundary for u |
---|
1115 | and v is at k = <b>nz+1</b> (u, v) while at k = <b>nz</b> |
---|
1116 | for all |
---|
1117 | other quantities. </p> <p>For parallel |
---|
1118 | runs, in case of <a href="#grid_matching">grid_matching</a> |
---|
1119 | = <span style="font-style: italic;">'strict'</span>, |
---|
1120 | <b>nz</b> must |
---|
1121 | be an integral multiple of |
---|
1122 | the number of processors in x-direction (due to data transposition |
---|
1123 | restrictions).</p> </td> </tr> <tr><td style="vertical-align: top;"><a name="ocean"></a><span style="font-weight: bold;">ocean</span></td><td style="vertical-align: top;">L</td><td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td><td style="vertical-align: top;">Parameter to switch on ocean runs.<br><br>By default PALM is configured to simulate atmospheric flows. However, starting from version 3.3, <span style="font-weight: bold;">ocean</span> = <span style="font-style: italic;">.T.</span> allows simulation of ocean turbulent flows. Setting this switch has several effects:<br><br><ul><li>An additional prognostic equation for salinity is solved.</li><li>Potential temperature in buoyancy and stability-related terms is replaced by potential density.</li><li>Potential |
---|
1124 | density is calculated from the equation of state for seawater after |
---|
1125 | each timestep, using the algorithm proposed by Jackett et al. (2006, J. |
---|
1126 | Atmos. Oceanic Technol., <span style="font-weight: bold;">23</span>, 1709-1728).<br>So far, only the initial hydrostatic pressure is entered into this equation.</li><li>z=0 (sea surface) is assumed at the model top (vertical grid index <span style="font-family: Courier New,Courier,monospace;">k=nzt</span> on the w-grid), with negative values of z indicating the depth.</li><li>Initial profiles are constructed (e.g. from <a href="#pt_vertical_gradient">pt_vertical_gradient</a> / <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>) starting from the sea surface, using surface values given by <a href="#pt_surface">pt_surface</a>, <a href="#sa_surface">sa_surface</a>, <a href="#ug_surface">ug_surface</a>, and <a href="#vg_surface">vg_surface</a>.</li><li>Zero salinity flux is used as default boundary condition at the bottom of the sea.</li><li>If switched on, random perturbations are by default imposed to the upper model domain from zu(nzt*2/3) to zu(nzt-3).</li></ul><br>Relevant parameters to be exclusively used for steering ocean runs are <a href="#bc_sa_t">bc_sa_t</a>, <a href="#bottom_salinityflux">bottom_salinityflux</a>, <a href="#sa_surface">sa_surface</a>, <a href="#sa_vertical_gradient">sa_vertical_gradient</a>, <a href="#sa_vertical_gradient_level">sa_vertical_gradient_level</a>, and <a href="#top_salinityflux">top_salinityflux</a>.<br><br>Section <a href="chapter_4.2.2.html">4.4.2</a> gives an example for appropriate settings of these and other parameters neccessary for ocean runs.<br><br><span style="font-weight: bold;">ocean</span> = <span style="font-style: italic;">.T.</span> does not allow settings of <a href="#timestep_scheme">timestep_scheme</a> = <span style="font-style: italic;">'leapfrog'</span> or <span style="font-style: italic;">'leapfrog+euler'</span> as well as <a href="#scalar_advec">scalar_advec</a> = <span style="font-style: italic;">'ups-scheme'</span>.<br><br><span style="font-weight: bold;">Current limitations:</span><br>Using |
---|
1127 | a vertical grid stretching is not recommended since it would still |
---|
1128 | stretch the grid towards the top boundary of the model (sea surface) |
---|
1129 | instead of the bottom boundary.</td></tr><tr> <td style="vertical-align: top;"> <p><a name="omega"></a><b>omega</b></p> |
---|
1130 | </td> <td style="vertical-align: top;">R</td> |
---|
1131 | <td style="vertical-align: top;"><i>7.29212E-5</i></td> |
---|
1132 | <td style="vertical-align: top;"> <p>Angular |
---|
1133 | velocity of the rotating system (in rad s<sup>-1</sup>). |
---|
1134 | </p> <p>The angular velocity of the earth is set by |
---|
1135 | default. The |
---|
1136 | values |
---|
1137 | of the Coriolis parameters are calculated as: </p> <ul> |
---|
1138 | <p>f = 2.0 * <b>omega</b> * sin(<a href="#phi">phi</a>) |
---|
1139 | <br>f* = 2.0 * <b>omega</b> * cos(<a href="#phi">phi</a>)</p> |
---|
1140 | </ul> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="outflow_damping_width"></a><b>outflow_damping_width</b></p> |
---|
1141 | </td> <td style="vertical-align: top;">I</td> |
---|
1142 | <td style="vertical-align: top;"><span style="font-style: italic;">MIN(20, |
---|
1143 | nx/2</span> or <span style="font-style: italic;">ny/2)</span></td> |
---|
1144 | <td style="vertical-align: top;">Width of |
---|
1145 | the damping range in the vicinity of the outflow (gridpoints).<br> |
---|
1146 | <br> |
---|
1147 | When using non-cyclic lateral boundaries (see <a href="chapter_4.1.html#bc_lr">bc_lr</a> |
---|
1148 | or <a href="chapter_4.1.html#bc_ns">bc_ns</a>), |
---|
1149 | a smoothing has to be applied to the |
---|
1150 | velocity field in the vicinity of the outflow in order to suppress any |
---|
1151 | reflections of outgoing disturbances. This parameter controlls the |
---|
1152 | horizontal range to which the smoothing is applied. The range is given |
---|
1153 | in gridpoints counted from the respective outflow boundary. For further |
---|
1154 | details about the smoothing see parameter <a href="chapter_4.1.html#km_damp_max">km_damp_max</a>, |
---|
1155 | which defines the magnitude of the damping.</td> </tr> |
---|
1156 | <tr> <td style="vertical-align: top;"> <p><a name="overshoot_limit_e"></a><b>overshoot_limit_e</b></p> |
---|
1157 | </td> <td style="vertical-align: top;">R</td> |
---|
1158 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1159 | <td style="vertical-align: top;"> <p>Allowed limit |
---|
1160 | for the overshooting of subgrid-scale TKE in |
---|
1161 | case that the upstream-spline scheme is switched on (in m<sup>2</sup>/s<sup>2</sup>). |
---|
1162 | </p> <p>By deafult, if cut-off of overshoots is switched |
---|
1163 | on for the |
---|
1164 | upstream-spline scheme (see <a href="#cut_spline_overshoot">cut_spline_overshoot</a>), |
---|
1165 | no overshoots are permitted at all. If <b>overshoot_limit_e</b> |
---|
1166 | is given a non-zero value, overshoots with the respective |
---|
1167 | amplitude (both upward and downward) are allowed. </p> |
---|
1168 | <p>Only positive values are allowed for <b>overshoot_limit_e</b>.</p> |
---|
1169 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="overshoot_limit_pt"></a><b>overshoot_limit_pt</b></p> |
---|
1170 | </td> <td style="vertical-align: top;">R</td> |
---|
1171 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1172 | <td style="vertical-align: top;"> <p>Allowed limit |
---|
1173 | for the overshooting of potential temperature in |
---|
1174 | case that the upstream-spline scheme is switched on (in K). </p> |
---|
1175 | <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>. |
---|
1176 | </p> <p>Only positive values are allowed for <b>overshoot_limit_pt</b>.</p> |
---|
1177 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="overshoot_limit_u"></a><b>overshoot_limit_u</b></p> |
---|
1178 | </td> <td style="vertical-align: top;">R</td> |
---|
1179 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1180 | <td style="vertical-align: top;">Allowed limit for the |
---|
1181 | overshooting of |
---|
1182 | the u-component of velocity in case that the upstream-spline scheme is |
---|
1183 | switched on (in m/s). <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>. |
---|
1184 | </p> <p>Only positive values are allowed for <b>overshoot_limit_u</b>.</p> |
---|
1185 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="overshoot_limit_v"></a><b>overshoot_limit_v</b></p> |
---|
1186 | </td> <td style="vertical-align: top;">R</td> |
---|
1187 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1188 | <td style="vertical-align: top;"> <p>Allowed limit |
---|
1189 | for the overshooting of the v-component of |
---|
1190 | velocity in case that the upstream-spline scheme is switched on |
---|
1191 | (in m/s). </p> <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>. |
---|
1192 | </p> <p>Only positive values are allowed for <b>overshoot_limit_v</b>.</p> |
---|
1193 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="overshoot_limit_w"></a><b>overshoot_limit_w</b></p> |
---|
1194 | </td> <td style="vertical-align: top;">R</td> |
---|
1195 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1196 | <td style="vertical-align: top;"> <p>Allowed limit |
---|
1197 | for the overshooting of the w-component of |
---|
1198 | velocity in case that the upstream-spline scheme is switched on |
---|
1199 | (in m/s). </p> <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>. |
---|
1200 | </p> <p>Only positive values are permitted for <b>overshoot_limit_w</b>.</p> |
---|
1201 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="passive_scalar"></a><b>passive_scalar</b></p> |
---|
1202 | </td> <td style="vertical-align: top;">L</td> |
---|
1203 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
1204 | <td style="vertical-align: top;"> <p>Parameter to |
---|
1205 | switch on the prognostic equation for a passive |
---|
1206 | scalar. <br> </p> <p>The initial vertical profile |
---|
1207 | of s can be set via parameters <a href="#s_surface">s_surface</a>, |
---|
1208 | <a href="#s_vertical_gradient">s_vertical_gradient</a> |
---|
1209 | and <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>. |
---|
1210 | Boundary conditions can be set via <a href="#s_surface_initial_change">s_surface_initial_change</a> |
---|
1211 | and <a href="#surface_scalarflux">surface_scalarflux</a>. |
---|
1212 | </p> <p><b>Note:</b> <br> |
---|
1213 | With <span style="font-weight: bold;">passive_scalar</span> |
---|
1214 | switched |
---|
1215 | on, the simultaneous use of humidity (see <a href="#humidity">humidity</a>) |
---|
1216 | is impossible.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="phi"></a><b>phi</b></p> |
---|
1217 | </td> <td style="vertical-align: top;">R</td> |
---|
1218 | <td style="vertical-align: top;"><i>55.0</i></td> |
---|
1219 | <td style="vertical-align: top;"> <p>Geographical |
---|
1220 | latitude (in degrees). </p> <p>The value of |
---|
1221 | this parameter determines the value of the |
---|
1222 | Coriolis parameters f and f*, provided that the angular velocity (see <a href="#omega">omega</a>) |
---|
1223 | is non-zero.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="prandtl_layer"></a><b>prandtl_layer</b></p> |
---|
1224 | </td> <td style="vertical-align: top;">L</td> |
---|
1225 | <td style="vertical-align: top;"><i>.T.</i></td> |
---|
1226 | <td style="vertical-align: top;"> <p>Parameter to |
---|
1227 | switch on a Prandtl layer. </p> <p>By default, |
---|
1228 | a Prandtl layer is switched on at the bottom |
---|
1229 | boundary between z = 0 and z = 0.5 * <a href="#dz">dz</a> |
---|
1230 | (the first computational grid point above ground for u, v and the |
---|
1231 | scalar quantities). |
---|
1232 | In this case, at the bottom boundary, free-slip conditions for u and v |
---|
1233 | (see <a href="#bc_uv_b">bc_uv_b</a>) |
---|
1234 | are not allowed. Likewise, laminar |
---|
1235 | simulations with constant eddy diffusivities (<a href="#km_constant">km_constant</a>) |
---|
1236 | are forbidden. </p> <p>With Prandtl-layer |
---|
1237 | switched off, the TKE boundary condition <a href="#bc_e_b">bc_e_b</a> |
---|
1238 | = '<i>(u*)**2+neumann'</i> must not be used and is |
---|
1239 | automatically |
---|
1240 | changed to <i>'neumann'</i> if necessary. Also, |
---|
1241 | the pressure |
---|
1242 | boundary condition <a href="#bc_p_b">bc_p_b</a> |
---|
1243 | = <i>'neumann+inhomo'</i> is not allowed. </p> |
---|
1244 | <p>The roughness length is declared via the parameter <a href="#roughness_length">roughness_length</a>.</p> |
---|
1245 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="precipitation"></a><b>precipitation</b></p> |
---|
1246 | </td> <td style="vertical-align: top;">L</td> |
---|
1247 | <td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td> <td style="vertical-align: top;"> <p>Parameter to switch |
---|
1248 | on the precipitation scheme.<br> </p> <p>For |
---|
1249 | precipitation processes PALM uses a simplified Kessler |
---|
1250 | scheme. This scheme only considers the |
---|
1251 | so-called autoconversion, that means the generation of rain water by |
---|
1252 | coagulation of cloud drops among themselves. Precipitation begins and |
---|
1253 | is immediately removed from the flow as soon as the liquid water |
---|
1254 | content exceeds the critical value of 0.5 g/kg.</p><p>The precipitation rate and amount can be output by assigning the runtime parameter <a href="chapter_4.2.html#data_output">data_output</a> = <span style="font-style: italic;">'prr*'</span> or <span style="font-style: italic;">'pra*'</span>, respectively. The time interval on which the precipitation amount is defined can be controlled via runtime parameter <a href="chapter_4.2.html#precipitation_amount_interval">precipitation_amount_interval</a>.</p> </td> </tr> |
---|
1255 | <tr><td style="vertical-align: top;"><a name="pt_reference"></a><span style="font-weight: bold;">pt_reference</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">use horizontal average as |
---|
1256 | refrence</span></td><td style="vertical-align: top;">Reference |
---|
1257 | temperature to be used in all buoyancy terms (in K).<br><br>By |
---|
1258 | default, the instantaneous horizontal average over the total model |
---|
1259 | domain is used.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), always a reference temperature is used in the buoyancy terms with a default value of <span style="font-weight: bold;">pt_reference</span> = <a href="#pt_surface">pt_surface</a>.</td></tr><tr> <td style="vertical-align: top;"> <p><a name="pt_surface"></a><b>pt_surface</b></p> |
---|
1260 | </td> <td style="vertical-align: top;">R</td> |
---|
1261 | <td style="vertical-align: top;"><i>300.0</i></td> |
---|
1262 | <td style="vertical-align: top;"> <p>Surface |
---|
1263 | potential temperature (in K). </p> <p>This |
---|
1264 | parameter assigns the value of the potential temperature |
---|
1265 | <span style="font-weight: bold;">pt</span> at the surface (k=0)<b>.</b> Starting from this value, |
---|
1266 | the |
---|
1267 | initial vertical temperature profile is constructed with <a href="#pt_vertical_gradient">pt_vertical_gradient</a> |
---|
1268 | and <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level |
---|
1269 | </a>. |
---|
1270 | This profile is also used for the 1d-model as a stationary profile.</p><p><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="#ocean">ocean</a>), |
---|
1271 | this parameter gives the temperature value at the sea surface, which is |
---|
1272 | at k=nzt. The profile is then constructed from the surface down to the |
---|
1273 | bottom of the model.</p> |
---|
1274 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="pt_surface_initial_change"></a><b>pt_surface_initial</b> |
---|
1275 | <br> <b>_change</b></p> </td> <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><span style="font-style: italic;">0.0</span><br> </td> |
---|
1276 | <td style="vertical-align: top;"> <p>Change in |
---|
1277 | surface temperature to be made at the beginning of |
---|
1278 | the 3d run |
---|
1279 | (in K). </p> <p>If <b>pt_surface_initial_change</b> |
---|
1280 | is set to a non-zero |
---|
1281 | value, the near surface sensible heat flux is not allowed to be given |
---|
1282 | simultaneously (see <a href="#surface_heatflux">surface_heatflux</a>).</p> |
---|
1283 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="pt_vertical_gradient"></a><b>pt_vertical_gradient</b></p> |
---|
1284 | </td> <td style="vertical-align: top;">R (10)</td> |
---|
1285 | <td style="vertical-align: top;"><i>10 * 0.0</i></td> |
---|
1286 | <td style="vertical-align: top;"> <p>Temperature |
---|
1287 | gradient(s) of the initial temperature profile (in |
---|
1288 | K |
---|
1289 | / 100 m). </p> <p>This temperature gradient |
---|
1290 | holds starting from the height |
---|
1291 | level defined by <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a> |
---|
1292 | (precisely: for all uv levels k where zu(k) > |
---|
1293 | pt_vertical_gradient_level, |
---|
1294 | pt_init(k) is set: pt_init(k) = pt_init(k-1) + dzu(k) * <b>pt_vertical_gradient</b>) |
---|
1295 | up to the top boundary or up to the next height level defined |
---|
1296 | by <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>. |
---|
1297 | A total of 10 different gradients for 11 height intervals (10 intervals |
---|
1298 | if <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>(1) |
---|
1299 | = <i>0.0</i>) can be assigned. The surface temperature is |
---|
1300 | assigned via <a href="#pt_surface">pt_surface</a>. |
---|
1301 | </p> <p>Example: </p> <ul> <p><b>pt_vertical_gradient</b> |
---|
1302 | = <i>1.0</i>, <i>0.5</i>, <br> |
---|
1303 | <b>pt_vertical_gradient_level</b> = <i>500.0</i>, |
---|
1304 | <i>1000.0</i>,</p> </ul> <p>That |
---|
1305 | defines the temperature profile to be neutrally |
---|
1306 | stratified |
---|
1307 | up to z = 500.0 m with a temperature given by <a href="#pt_surface">pt_surface</a>. |
---|
1308 | For 500.0 m < z <= 1000.0 m the temperature gradient is |
---|
1309 | 1.0 K / |
---|
1310 | 100 m and for z > 1000.0 m up to the top boundary it is |
---|
1311 | 0.5 K / 100 m (it is assumed that the assigned height levels correspond |
---|
1312 | with uv levels).</p><p><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), |
---|
1313 | the profile is constructed like described above, but starting from the |
---|
1314 | sea surface (k=nzt) down to the bottom boundary of the model. Height |
---|
1315 | levels have then to be given as negative values, e.g. <span style="font-weight: bold;">pt_vertical_gradient_level</span> = <span style="font-style: italic;">-500.0</span>, <span style="font-style: italic;">-1000.0</span>.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="pt_vertical_gradient_level"></a><b>pt_vertical_gradient</b> |
---|
1316 | <br> <b>_level</b></p> </td> <td style="vertical-align: top;">R (10)</td> <td style="vertical-align: top;"> <p><i>10 *</i> |
---|
1317 | <span style="font-style: italic;">0.0</span><br> |
---|
1318 | </p> </td> <td style="vertical-align: top;"> |
---|
1319 | <p>Height level from which on the temperature gradient defined by |
---|
1320 | <a href="#pt_vertical_gradient">pt_vertical_gradient</a> |
---|
1321 | is effective (in m). </p> <p>The height levels have to be assigned in ascending order. The |
---|
1322 | default values result in a neutral stratification regardless of the |
---|
1323 | values of <a href="#pt_vertical_gradient">pt_vertical_gradient</a> |
---|
1324 | (unless the top boundary of the model is higher than 100000.0 m). |
---|
1325 | For the piecewise construction of temperature profiles see <a href="#pt_vertical_gradient">pt_vertical_gradient</a>.</p><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), the (negative) height levels have to be assigned in descending order. |
---|
1326 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="q_surface"></a><b>q_surface</b></p> |
---|
1327 | </td> <td style="vertical-align: top;">R</td> |
---|
1328 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1329 | <td style="vertical-align: top;"> <p>Surface |
---|
1330 | specific humidity / total water content (kg/kg). </p> <p>This |
---|
1331 | parameter assigns the value of the specific humidity q at |
---|
1332 | the surface (k=0). Starting from this value, the initial |
---|
1333 | humidity |
---|
1334 | profile is constructed with <a href="#q_vertical_gradient">q_vertical_gradient</a> |
---|
1335 | and <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>. |
---|
1336 | This profile is also used for the 1d-model as a stationary profile.</p> |
---|
1337 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="q_surface_initial_change"></a><b>q_surface_initial</b> |
---|
1338 | <br> <b>_change</b></p> </td> <td style="vertical-align: top;">R<br> </td> <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1339 | <td style="vertical-align: top;"> <p>Change in |
---|
1340 | surface specific humidity / total water content to |
---|
1341 | be made at the beginning |
---|
1342 | of the 3d run (kg/kg). </p> <p>If <b>q_surface_initial_change</b><i> |
---|
1343 | </i>is set to a |
---|
1344 | non-zero value the |
---|
1345 | near surface latent heat flux (water flux) is not allowed to be given |
---|
1346 | simultaneously (see <a href="#surface_waterflux">surface_waterflux</a>).</p> |
---|
1347 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="q_vertical_gradient"></a><b>q_vertical_gradient</b></p> |
---|
1348 | </td> <td style="vertical-align: top;">R (10)</td> |
---|
1349 | <td style="vertical-align: top;"><i>10 * 0.0</i></td> |
---|
1350 | <td style="vertical-align: top;"> <p>Humidity |
---|
1351 | gradient(s) of the initial humidity profile |
---|
1352 | (in 1/100 m). </p> <p>This humidity gradient |
---|
1353 | holds starting from the height |
---|
1354 | level defined by <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a> |
---|
1355 | (precisely: for all uv levels k, where zu(k) > |
---|
1356 | q_vertical_gradient_level, |
---|
1357 | q_init(k) is set: q_init(k) = q_init(k-1) + dzu(k) * <b>q_vertical_gradient</b>) |
---|
1358 | up to the top boundary or up to the next height level defined |
---|
1359 | by <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>. |
---|
1360 | A total of 10 different gradients for 11 height intervals (10 intervals |
---|
1361 | if <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>(1) |
---|
1362 | = <i>0.0</i>) can be asigned. The surface humidity is |
---|
1363 | assigned |
---|
1364 | via <a href="#q_surface">q_surface</a>. </p> |
---|
1365 | <p>Example: </p> <ul> <p><b>q_vertical_gradient</b> |
---|
1366 | = <i>0.001</i>, <i>0.0005</i>, <br> |
---|
1367 | <b>q_vertical_gradient_level</b> = <i>500.0</i>, |
---|
1368 | <i>1000.0</i>,</p> </ul> |
---|
1369 | That defines the humidity to be constant with height up to z = |
---|
1370 | 500.0 |
---|
1371 | m with a |
---|
1372 | value given by <a href="#q_surface">q_surface</a>. |
---|
1373 | For 500.0 m < z <= 1000.0 m the humidity gradient is |
---|
1374 | 0.001 / 100 |
---|
1375 | m and for z > 1000.0 m up to the top boundary it is |
---|
1376 | 0.0005 / 100 m (it is assumed that the assigned height levels |
---|
1377 | correspond with uv |
---|
1378 | levels). </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="q_vertical_gradient_level"></a><b>q_vertical_gradient</b> |
---|
1379 | <br> <b>_level</b></p> </td> <td style="vertical-align: top;">R (10)</td> <td style="vertical-align: top;"> <p><i>10 *</i> |
---|
1380 | <i>0.0</i></p> </td> <td style="vertical-align: top;"> <p>Height level from |
---|
1381 | which on the humidity gradient defined by <a href="#q_vertical_gradient">q_vertical_gradient</a> |
---|
1382 | is effective (in m). </p> <p>The height levels |
---|
1383 | are to be assigned in ascending order. The |
---|
1384 | default values result in a humidity constant with height regardless of |
---|
1385 | the values of <a href="#q_vertical_gradient">q_vertical_gradient</a> |
---|
1386 | (unless the top boundary of the model is higher than 100000.0 m). For |
---|
1387 | the piecewise construction of humidity profiles see <a href="#q_vertical_gradient">q_vertical_gradient</a>.</p> |
---|
1388 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="radiation"></a><b>radiation</b></p> |
---|
1389 | </td> <td style="vertical-align: top;">L</td> |
---|
1390 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
1391 | <td style="vertical-align: top;"> <p>Parameter to |
---|
1392 | switch on longwave radiation cooling at |
---|
1393 | cloud-tops. </p> <p>Long-wave radiation |
---|
1394 | processes are parameterized by the |
---|
1395 | effective emissivity, which considers only the absorption and emission |
---|
1396 | of long-wave radiation at cloud droplets. The radiation scheme can be |
---|
1397 | used only with <a href="#cloud_physics">cloud_physics</a> |
---|
1398 | = .TRUE. .</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="random_generator"></a><b>random_generator</b></p> |
---|
1399 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
1400 | <td style="vertical-align: top;"> <p><i>'numerical</i><br> |
---|
1401 | <i>recipes'</i></p> </td> <td style="vertical-align: top;"> <p>Random number |
---|
1402 | generator to be used for creating uniformly |
---|
1403 | distributed random numbers. <br> </p> <p>It is |
---|
1404 | used if random perturbations are to be imposed on the |
---|
1405 | velocity field or on the surface heat flux field (see <a href="chapter_4.2.html#create_disturbances">create_disturbances</a> |
---|
1406 | and <a href="chapter_4.2.html#random_heatflux">random_heatflux</a>). |
---|
1407 | By default, the "Numerical Recipes" random number generator is used. |
---|
1408 | This one provides exactly the same order of random numbers on all |
---|
1409 | different machines and should be used in particular for comparison runs.<br> |
---|
1410 | <br> |
---|
1411 | Besides, a system-specific generator is available ( <b>random_generator</b> |
---|
1412 | = <i>'system-specific')</i> which should particularly be |
---|
1413 | used for runs |
---|
1414 | on vector parallel computers (NEC), because the default generator |
---|
1415 | cannot be vectorized and therefore significantly drops down the code |
---|
1416 | performance on these machines.<br> </p> <span style="font-weight: bold;">Note:</span><br> |
---|
1417 | Results from two otherwise identical model runs will not be comparable |
---|
1418 | one-to-one if they used different random number generators.</td> </tr> |
---|
1419 | <tr> <td style="vertical-align: top;"> <p><a name="random_heatflux"></a><b>random_heatflux</b></p> |
---|
1420 | </td> <td style="vertical-align: top;">L</td> |
---|
1421 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
1422 | <td style="vertical-align: top;"> <p>Parameter to |
---|
1423 | impose random perturbations on the internal two-dimensional near |
---|
1424 | surface heat flux field <span style="font-style: italic;">shf</span>. |
---|
1425 | <br> </p>If a near surface heat flux is used as bottom |
---|
1426 | boundary |
---|
1427 | condition (see <a href="#surface_heatflux">surface_heatflux</a>), |
---|
1428 | it is by default assumed to be horizontally homogeneous. Random |
---|
1429 | perturbations can be imposed on the internal |
---|
1430 | two-dimensional heat flux field <span style="font-style: italic;">shf</span> by assigning <b>random_heatflux</b> |
---|
1431 | = <i>.T.</i>. The disturbed heat flux field is calculated |
---|
1432 | by |
---|
1433 | multiplying the |
---|
1434 | values at each mesh point with a normally distributed random number |
---|
1435 | with a mean value and standard deviation of 1. This is repeated after |
---|
1436 | every timestep.<br> <br> |
---|
1437 | In case of a non-flat <a href="#topography">topography</a>, assigning |
---|
1438 | <b>random_heatflux</b> |
---|
1439 | = <i>.T.</i> imposes random perturbations on the |
---|
1440 | combined heat |
---|
1441 | flux field <span style="font-style: italic;">shf</span> |
---|
1442 | composed of <a href="#surface_heatflux">surface_heatflux</a> |
---|
1443 | at the bottom surface and <a href="#wall_heatflux">wall_heatflux(0)</a> |
---|
1444 | at the topography top face.</td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="rif_max"></a><b>rif_max</b></p> |
---|
1445 | </td> <td style="vertical-align: top;">R</td> |
---|
1446 | <td style="vertical-align: top;"><i>1.0</i></td> |
---|
1447 | <td style="vertical-align: top;"> <p>Upper limit of |
---|
1448 | the flux-Richardson number. </p> <p>With the |
---|
1449 | Prandtl layer switched on (see <a href="#prandtl_layer">prandtl_layer</a>), |
---|
1450 | flux-Richardson numbers (rif) are calculated for z=z<sub>p</sub> |
---|
1451 | (k=1) |
---|
1452 | in the 3d-model (in the 1d model for all heights). Their values in |
---|
1453 | particular determine the |
---|
1454 | values of the friction velocity (1d- and 3d-model) and the values of |
---|
1455 | the eddy diffusivity (1d-model). With small wind velocities at the |
---|
1456 | Prandtl layer top or small vertical wind shears in the 1d-model, rif |
---|
1457 | can take up unrealistic large values. They are limited by an upper (<span style="font-weight: bold;">rif_max</span>) and lower |
---|
1458 | limit (see <a href="#rif_min">rif_min</a>) |
---|
1459 | for the flux-Richardson number. The condition <b>rif_max</b> |
---|
1460 | > <b>rif_min</b> |
---|
1461 | must be met.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="rif_min"></a><b>rif_min</b></p> |
---|
1462 | </td> <td style="vertical-align: top;">R</td> |
---|
1463 | <td style="vertical-align: top;"><i>- 5.0</i></td> |
---|
1464 | <td style="vertical-align: top;"> <p>Lower limit of |
---|
1465 | the flux-Richardson number. </p> <p>For further |
---|
1466 | explanations see <a href="#rif_max">rif_max</a>. |
---|
1467 | The condition <b>rif_max</b> > <b>rif_min </b>must |
---|
1468 | be met.</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="roughness_length"></a><b>roughness_length</b></p> |
---|
1469 | </td> <td style="vertical-align: top;">R</td> |
---|
1470 | <td style="vertical-align: top;"><i>0.1</i></td> |
---|
1471 | <td style="vertical-align: top;"> <p>Roughness |
---|
1472 | length (in m). </p> <p>This parameter is |
---|
1473 | effective only in case that a Prandtl layer |
---|
1474 | is switched |
---|
1475 | on (see <a href="#prandtl_layer">prandtl_layer</a>).</p> |
---|
1476 | </td> </tr> <tr><td style="vertical-align: top;"><a name="sa_surface"></a><span style="font-weight: bold;">sa_surface</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">35.0</span></td><td style="vertical-align: top;"> <p>Surface salinity (in psu). </p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).<p>This |
---|
1477 | parameter assigns the value of the salinity <span style="font-weight: bold;">sa</span> at the sea surface (k=nzt)<b>.</b> Starting from this value, |
---|
1478 | the |
---|
1479 | initial vertical salinity profile is constructed from the surface down to the bottom of the model (k=0) by using <a href="chapter_4.1.html#sa_vertical_gradient">sa_vertical_gradient</a> |
---|
1480 | and <a href="chapter_4.1.html#sa_vertical_gradient_level">sa_vertical_gradient_level |
---|
1481 | </a>.</p></td></tr><tr><td style="vertical-align: top;"><a name="sa_vertical_gradient"></a><span style="font-weight: bold;">sa_vertical_gradient</span></td><td style="vertical-align: top;">R(10)</td><td style="vertical-align: top;"><span style="font-style: italic;">10 * 0.0</span></td><td style="vertical-align: top;"><p>Salinity gradient(s) of the initial salinity profile (in psu |
---|
1482 | / 100 m). </p> <p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).</p><p>This salinity gradient |
---|
1483 | holds starting from the height |
---|
1484 | level defined by <a href="chapter_4.1.html#sa_vertical_gradient_level">sa_vertical_gradient_level</a> |
---|
1485 | (precisely: for all uv levels k where zu(k) < |
---|
1486 | sa_vertical_gradient_level, sa_init(k) is set: sa_init(k) = |
---|
1487 | sa_init(k+1) - dzu(k+1) * <b>sa_vertical_gradient</b>) down to the bottom boundary or down to the next height level defined |
---|
1488 | by <a href="chapter_4.1.html#sa_vertical_gradient_level">sa_vertical_gradient_level</a>. |
---|
1489 | A total of 10 different gradients for 11 height intervals (10 intervals |
---|
1490 | if <a href="chapter_4.1.html#sa_vertical_gradient_level">sa_vertical_gradient_level</a>(1) |
---|
1491 | = <i>0.0</i>) can be assigned. The surface salinity at k=nzt is |
---|
1492 | assigned via <a href="chapter_4.1.html#sa_surface">sa_surface</a>. |
---|
1493 | </p> <p>Example: </p> <ul><p><b>sa_vertical_gradient</b> |
---|
1494 | = <i>1.0</i>, <i>0.5</i>, <br> |
---|
1495 | <b>sa_vertical_gradient_level</b> = <i>-500.0</i>, |
---|
1496 | -<i>1000.0</i>,</p></ul> <p>That |
---|
1497 | defines the salinity to be constant down to z = -500.0 m with a salinity given by <a href="chapter_4.1.html#sa_surface">sa_surface</a>. |
---|
1498 | For -500.0 m < z <= -1000.0 m the salinity gradient is |
---|
1499 | 1.0 psu / |
---|
1500 | 100 m and for z < -1000.0 m down to the bottom boundary it is |
---|
1501 | 0.5 psu / 100 m (it is assumed that the assigned height levels correspond |
---|
1502 | with uv levels).</p></td></tr><tr><td style="vertical-align: top;"><a name="sa_vertical_gradient_level"></a><span style="font-weight: bold;">sa_vertical_gradient_level</span></td><td style="vertical-align: top;">R(10)</td><td style="vertical-align: top;"><span style="font-style: italic;">10 * 0.0</span></td><td style="vertical-align: top;"><p>Height level from which on the salinity gradient defined by <a href="chapter_4.1.html#sa_vertical_gradient">sa_vertical_gradient</a> |
---|
1503 | is effective (in m). </p> <p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).</p><p>The height levels have to be assigned in descending order. The |
---|
1504 | default values result in a constant salinity profile regardless of the |
---|
1505 | values of <a href="chapter_4.1.html#sa_vertical_gradient">sa_vertical_gradient</a> |
---|
1506 | (unless the bottom boundary of the model is lower than -100000.0 m). |
---|
1507 | For the piecewise construction of salinity profiles see <a href="chapter_4.1.html#sa_vertical_gradient">sa_vertical_gradient</a>.</p></td></tr><tr> <td style="vertical-align: top;"> <p><a name="scalar_advec"></a><b>scalar_advec</b></p> |
---|
1508 | </td> <td style="vertical-align: top;">C * 10</td> |
---|
1509 | <td style="vertical-align: top;"><i>'pw-scheme'</i></td> |
---|
1510 | <td style="vertical-align: top;"> <p>Advection |
---|
1511 | scheme to be used for the scalar quantities. </p> <p>The |
---|
1512 | user can choose between the following schemes:<br> </p> <p><span style="font-style: italic;">'pw-scheme'</span><br> |
---|
1513 | </p> <div style="margin-left: 40px;">The scheme of |
---|
1514 | Piascek and |
---|
1515 | Williams (1970, J. Comp. Phys., 6, |
---|
1516 | 392-405) with central differences in the form C3 is used.<br> |
---|
1517 | If intermediate Euler-timesteps are carried out in case of <a href="#timestep_scheme">timestep_scheme</a> |
---|
1518 | = <span style="font-style: italic;">'leapfrog+euler'</span> |
---|
1519 | the |
---|
1520 | advection scheme is - for the Euler-timestep - automatically switched |
---|
1521 | to an upstream-scheme. <br> </div> <br> <p><span style="font-style: italic;">'bc-scheme'</span><br> |
---|
1522 | </p> <div style="margin-left: 40px;">The Bott |
---|
1523 | scheme modified by |
---|
1524 | Chlond (1994, Mon. |
---|
1525 | Wea. Rev., 122, 111-125). This is a conservative monotonous scheme with |
---|
1526 | very small numerical diffusion and therefore very good conservation of |
---|
1527 | scalar flow features. The scheme however, is computationally very |
---|
1528 | expensive both because it is expensive itself and because it does (so |
---|
1529 | far) not allow specific code optimizations (e.g. cache optimization). |
---|
1530 | Choice of this |
---|
1531 | scheme forces the Euler timestep scheme to be used for the scalar |
---|
1532 | quantities. For output of horizontally averaged |
---|
1533 | profiles of the resolved / total heat flux, <a href="chapter_4.2.html#data_output_pr">data_output_pr</a> |
---|
1534 | = <i>'w*pt*BC'</i> / <i>'wptBC' </i>should |
---|
1535 | be used, instead of the |
---|
1536 | standard profiles (<span style="font-style: italic;">'w*pt*'</span> |
---|
1537 | and <span style="font-style: italic;">'wpt'</span>) |
---|
1538 | because these are |
---|
1539 | too inaccurate with this scheme. However, for subdomain analysis (see <a href="#statistic_regions">statistic_regions</a>) |
---|
1540 | exactly the reverse holds: here <i>'w*pt*BC'</i> and <i>'wptBC'</i> |
---|
1541 | show very large errors and should not be used.<br> <br> |
---|
1542 | This scheme is not allowed for non-cyclic lateral boundary conditions |
---|
1543 | (see <a href="#bc_lr">bc_lr</a> |
---|
1544 | and <a href="#bc_ns">bc_ns</a>).<br> <br> |
---|
1545 | </div> <span style="font-style: italic;">'ups-scheme'</span><br> |
---|
1546 | <p style="margin-left: 40px;">The upstream-spline-scheme |
---|
1547 | is used |
---|
1548 | (see Mahrer and Pielke, |
---|
1549 | 1978: Mon. Wea. Rev., 106, 818-830). In opposite to the Piascek |
---|
1550 | Williams scheme, this is characterized by much better numerical |
---|
1551 | features (less numerical diffusion, better preservation of flux |
---|
1552 | structures, e.g. vortices), but computationally it is much more |
---|
1553 | expensive. In |
---|
1554 | addition, the use of the Euler-timestep scheme is mandatory (<a href="#timestep_scheme">timestep_scheme</a> |
---|
1555 | = <span style="font-style: italic;">'</span><i>euler'</i>), |
---|
1556 | i.e. the |
---|
1557 | timestep accuracy is only first order. For this reason the advection of |
---|
1558 | momentum (see <a href="#momentum_advec">momentum_advec</a>) |
---|
1559 | should then also be carried out with the upstream-spline scheme, |
---|
1560 | because otherwise the momentum would |
---|
1561 | be subject to large numerical diffusion due to the upstream |
---|
1562 | scheme. </p> <p style="margin-left: 40px;">Since |
---|
1563 | the cubic splines used tend |
---|
1564 | to overshoot under |
---|
1565 | certain circumstances, this effect must be adjusted by suitable |
---|
1566 | filtering and smoothing (see <a href="#cut_spline_overshoot">cut_spline_overshoot</a>, |
---|
1567 | <a href="#long_filter_factor">long_filter_factor</a>, |
---|
1568 | <a href="#ups_limit_pt">ups_limit_pt</a>, <a href="#ups_limit_u">ups_limit_u</a>, <a href="#ups_limit_v">ups_limit_v</a>, <a href="#ups_limit_w">ups_limit_w</a>). |
---|
1569 | This is always neccesssary for runs with stable stratification, |
---|
1570 | even if this stratification appears only in parts of the model |
---|
1571 | domain. </p> <p style="margin-left: 40px;">With |
---|
1572 | stable stratification the |
---|
1573 | upstream-upline scheme also produces gravity waves with large |
---|
1574 | amplitude, which must be |
---|
1575 | suitably damped (see <a href="chapter_4.2.html#rayleigh_damping_factor">rayleigh_damping_factor</a>).<br> |
---|
1576 | </p> <p style="margin-left: 40px;"><span style="font-weight: bold;">Important: </span>The |
---|
1577 | upstream-spline scheme is not implemented for humidity and passive |
---|
1578 | scalars (see <a href="#humidity">humidity</a> |
---|
1579 | and <a href="#passive_scalar">passive_scalar</a>) |
---|
1580 | and requires the use of a 2d-domain-decomposition. The last conditions |
---|
1581 | severely restricts code optimization on several machines leading to |
---|
1582 | very long execution times! This scheme is also not allowed for |
---|
1583 | non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a> |
---|
1584 | and <a href="#bc_ns">bc_ns</a>).</p><br>A |
---|
1585 | differing advection scheme can be choosed for the subgrid-scale TKE |
---|
1586 | using parameter <a href="chapter_4.1.html#use_upstream_for_tke">use_upstream_for_tke</a>.</td> |
---|
1587 | </tr> <tr> <td style="vertical-align: top;"> |
---|
1588 | <p><a name="statistic_regions"></a><b>statistic_regions</b></p> |
---|
1589 | </td> <td style="vertical-align: top;">I</td> |
---|
1590 | <td style="vertical-align: top;"><i>0</i></td> |
---|
1591 | <td style="vertical-align: top;"> <p>Number of |
---|
1592 | additional user-defined subdomains for which |
---|
1593 | statistical analysis |
---|
1594 | and corresponding output (profiles, time series) shall be |
---|
1595 | made. </p> <p>By default, vertical profiles and |
---|
1596 | other statistical quantities |
---|
1597 | are calculated as horizontal and/or volume average of the total model |
---|
1598 | domain. Beyond that, these calculations can also be carried out for |
---|
1599 | subdomains which can be defined using the field <a href="chapter_3.5.3.html">rmask </a>within the |
---|
1600 | user-defined software |
---|
1601 | (see <a href="chapter_3.5.3.html">chapter |
---|
1602 | 3.5.3</a>). The number of these subdomains is determined with the |
---|
1603 | parameter <b>statistic_regions</b>. Maximum 9 additional |
---|
1604 | subdomains |
---|
1605 | are allowed. The parameter <a href="chapter_4.3.html#region">region</a> |
---|
1606 | can be used to assigned names (identifier) to these subdomains which |
---|
1607 | are then used in the headers |
---|
1608 | of the output files and plots.</p><p>If the default NetCDF |
---|
1609 | output format is selected (see parameter <a href="chapter_4.2.html#data_output_format">data_output_format</a>), |
---|
1610 | data for the total domain and all defined subdomains are output to the |
---|
1611 | same file(s) (<a href="chapter_3.4.html#DATA_1D_PR_NETCDF">DATA_1D_PR_NETCDF</a>, |
---|
1612 | <a href="chapter_3.4.html#DATA_1D_TS_NETCDF">DATA_1D_TS_NETCDF</a>). |
---|
1613 | In case of <span style="font-weight: bold;">statistic_regions</span> |
---|
1614 | > <span style="font-style: italic;">0</span>, |
---|
1615 | data on the file for the different domains can be distinguished by a |
---|
1616 | suffix which is appended to the quantity names. Suffix 0 means data for |
---|
1617 | the total domain, suffix 1 means data for subdomain 1, etc.</p><p>In |
---|
1618 | case of <span style="font-weight: bold;">data_output_format</span> |
---|
1619 | = <span style="font-style: italic;">'profil'</span>, |
---|
1620 | individual local files for profiles (<a href="chapter_3.4.html#PLOT1D_DATA">PLOT1D_DATA</a>) are |
---|
1621 | created for each subdomain. The individual subdomain files differ by |
---|
1622 | their name (the |
---|
1623 | number of the respective subdomain is attached, e.g. |
---|
1624 | PLOT1D_DATA_1). In this case the name of the file with the data of |
---|
1625 | the total domain is PLOT1D_DATA_0. If no subdomains |
---|
1626 | are declared (<b>statistic_regions</b> = <i>0</i>), |
---|
1627 | the name |
---|
1628 | PLOT1D_DATA is used (this must be considered in the |
---|
1629 | respective file connection statements of the <span style="font-weight: bold;">mrun</span> configuration |
---|
1630 | file).</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="surface_heatflux"></a><b>surface_heatflux</b></p> |
---|
1631 | </td> <td style="vertical-align: top;">R</td> |
---|
1632 | <td style="vertical-align: top;"><span style="font-style: italic;">no prescribed<br> |
---|
1633 | heatflux<br> </span></td> <td style="vertical-align: top;"> <p>Kinematic sensible |
---|
1634 | heat flux at the bottom surface (in K m/s). </p> <p>If |
---|
1635 | a value is assigned to this parameter, the internal two-dimensional |
---|
1636 | surface heat flux field <span style="font-style: italic;">shf</span> |
---|
1637 | is initialized with the value of <span style="font-weight: bold;">surface_heatflux</span> as |
---|
1638 | bottom (horizontally homogeneous) boundary condition for the |
---|
1639 | temperature equation. This additionally requires that a Neumann |
---|
1640 | condition must be used for the potential temperature (see <a href="#bc_pt_b">bc_pt_b</a>), |
---|
1641 | because otherwise the resolved scale may contribute to |
---|
1642 | the surface flux so that a constant value cannot be guaranteed. Also, |
---|
1643 | changes of the |
---|
1644 | surface temperature (see <a href="#pt_surface_initial_change">pt_surface_initial_change</a>) |
---|
1645 | are not allowed. The parameter <a href="#random_heatflux">random_heatflux</a> |
---|
1646 | can be used to impose random perturbations on the (homogeneous) surface |
---|
1647 | heat |
---|
1648 | flux field <span style="font-style: italic;">shf</span>. </p> |
---|
1649 | <p> |
---|
1650 | In case of a non-flat <a href="#topography">topography</a>, the |
---|
1651 | internal two-dimensional surface heat |
---|
1652 | flux field <span style="font-style: italic;">shf</span> |
---|
1653 | is initialized with the value of <span style="font-weight: bold;">surface_heatflux</span> |
---|
1654 | at the bottom surface and <a href="#wall_heatflux">wall_heatflux(0)</a> |
---|
1655 | at the topography top face. The parameter<a href="#random_heatflux"> random_heatflux</a> |
---|
1656 | can be used to impose random perturbations on this combined surface |
---|
1657 | heat |
---|
1658 | flux field <span style="font-style: italic;">shf</span>. |
---|
1659 | </p> <p>If no surface heat flux is assigned, <span style="font-style: italic;">shf</span> is calculated |
---|
1660 | at each timestep by u<sub>*</sub> * theta<sub>*</sub> |
---|
1661 | (of course only with <a href="#prandtl_layer">prandtl_layer</a> |
---|
1662 | switched on). Here, u<sub>*</sub> |
---|
1663 | and theta<sub>*</sub> are calculated from the Prandtl law |
---|
1664 | assuming |
---|
1665 | logarithmic wind and temperature |
---|
1666 | profiles between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_pt_b">bc_pt_b</a>) |
---|
1667 | must be used as bottom boundary condition for the potential temperature.</p><p>See |
---|
1668 | also <a href="#top_heatflux">top_heatflux</a>.</p> |
---|
1669 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="surface_pressure"></a><b>surface_pressure</b></p> |
---|
1670 | </td> <td style="vertical-align: top;">R</td> |
---|
1671 | <td style="vertical-align: top;"><i>1013.25</i></td> |
---|
1672 | <td style="vertical-align: top;"> <p>Atmospheric |
---|
1673 | pressure at the surface (in hPa). </p> |
---|
1674 | Starting from this surface value, the vertical pressure |
---|
1675 | profile is calculated once at the beginning of the run assuming a |
---|
1676 | neutrally stratified |
---|
1677 | atmosphere. This is needed for |
---|
1678 | converting between the liquid water potential temperature and the |
---|
1679 | potential temperature (see <a href="#cloud_physics">cloud_physics</a><span style="text-decoration: underline;"></span>).</td> |
---|
1680 | </tr> <tr> <td style="vertical-align: top;"> |
---|
1681 | <p><a name="surface_scalarflux"></a><b>surface_scalarflux</b></p> |
---|
1682 | </td> <td style="vertical-align: top;">R</td> |
---|
1683 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1684 | <td style="vertical-align: top;"> <p>Scalar flux at |
---|
1685 | the surface (in kg/(m<sup>2</sup> s)). </p> |
---|
1686 | <p>If a non-zero value is assigned to this parameter, the |
---|
1687 | respective scalar flux value is used |
---|
1688 | as bottom (horizontally homogeneous) boundary condition for the scalar |
---|
1689 | concentration equation. This additionally requires that a |
---|
1690 | Neumann |
---|
1691 | condition must be used for the scalar concentration (see <a href="#bc_s_b">bc_s_b</a>), |
---|
1692 | because otherwise the resolved scale may contribute to |
---|
1693 | the surface flux so that a constant value cannot be guaranteed. Also, |
---|
1694 | changes of the |
---|
1695 | surface scalar concentration (see <a href="#s_surface_initial_change">s_surface_initial_change</a>) |
---|
1696 | are not allowed. <br> </p> <p>If no surface scalar |
---|
1697 | flux is assigned (<b>surface_scalarflux</b> |
---|
1698 | = <i>0.0</i>), |
---|
1699 | it is calculated at each timestep by u<sub>*</sub> * s<sub>*</sub> |
---|
1700 | (of course only with Prandtl layer switched on). Here, s<sub>*</sub> |
---|
1701 | is calculated from the Prandtl law assuming a logarithmic scalar |
---|
1702 | concentration |
---|
1703 | profile between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_s_b">bc_s_b</a>) |
---|
1704 | must be used as bottom boundary condition for the scalar concentration.</p> |
---|
1705 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="surface_waterflux"></a><b>surface_waterflux</b></p> |
---|
1706 | </td> <td style="vertical-align: top;">R</td> |
---|
1707 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1708 | <td style="vertical-align: top;"> <p>Kinematic |
---|
1709 | water flux near the surface (in m/s). </p> <p>If |
---|
1710 | a non-zero value is assigned to this parameter, the |
---|
1711 | respective water flux value is used |
---|
1712 | as bottom (horizontally homogeneous) boundary condition for the |
---|
1713 | humidity equation. This additionally requires that a Neumann |
---|
1714 | condition must be used for the specific humidity / total water content |
---|
1715 | (see <a href="#bc_q_b">bc_q_b</a>), |
---|
1716 | because otherwise the resolved scale may contribute to |
---|
1717 | the surface flux so that a constant value cannot be guaranteed. Also, |
---|
1718 | changes of the |
---|
1719 | surface humidity (see <a href="#q_surface_initial_change">q_surface_initial_change</a>) |
---|
1720 | are not allowed.<br> </p> <p>If no surface water |
---|
1721 | flux is assigned (<b>surface_waterflux</b> |
---|
1722 | = <i>0.0</i>), |
---|
1723 | it is calculated at each timestep by u<sub>*</sub> * q<sub>*</sub> |
---|
1724 | (of course only with Prandtl layer switched on). Here, q<sub>*</sub> |
---|
1725 | is calculated from the Prandtl law assuming a logarithmic temperature |
---|
1726 | profile between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_q_b">bc_q_b</a>) |
---|
1727 | must be used as the bottom boundary condition for the humidity.</p> |
---|
1728 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="s_surface"></a><b>s_surface</b></p> |
---|
1729 | </td> <td style="vertical-align: top;">R</td> |
---|
1730 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1731 | <td style="vertical-align: top;"> <p>Surface value |
---|
1732 | of the passive scalar (in kg/m<sup>3</sup>). <br> |
---|
1733 | </p> |
---|
1734 | This parameter assigns the value of the passive scalar s at |
---|
1735 | the surface (k=0)<b>.</b> Starting from this value, the |
---|
1736 | initial vertical scalar concentration profile is constructed with<a href="#s_vertical_gradient"> |
---|
1737 | s_vertical_gradient</a> and <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>.</td> |
---|
1738 | </tr> <tr> <td style="vertical-align: top;"> |
---|
1739 | <p><a name="s_surface_initial_change"></a><b>s_surface_initial</b> |
---|
1740 | <br> <b>_change</b></p> </td> <td style="vertical-align: top;">R</td> <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1741 | <td style="vertical-align: top;"> <p>Change in |
---|
1742 | surface scalar concentration to be made at the |
---|
1743 | beginning of the 3d run (in kg/m<sup>3</sup>). </p> |
---|
1744 | <p>If <b>s_surface_initial_change</b><i> </i>is |
---|
1745 | set to a |
---|
1746 | non-zero |
---|
1747 | value, the near surface scalar flux is not allowed to be given |
---|
1748 | simultaneously (see <a href="#surface_scalarflux">surface_scalarflux</a>).</p> |
---|
1749 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="s_vertical_gradient"></a><b>s_vertical_gradient</b></p> |
---|
1750 | </td> <td style="vertical-align: top;">R (10)</td> |
---|
1751 | <td style="vertical-align: top;"><i>10 * 0</i><i>.0</i></td> |
---|
1752 | <td style="vertical-align: top;"> <p>Scalar |
---|
1753 | concentration gradient(s) of the initial scalar |
---|
1754 | concentration profile (in kg/m<sup>3 </sup>/ |
---|
1755 | 100 m). </p> <p>The scalar gradient holds |
---|
1756 | starting from the height level |
---|
1757 | defined by <a href="#s_vertical_gradient_level">s_vertical_gradient_level |
---|
1758 | </a>(precisely: for all uv levels k, where zu(k) > |
---|
1759 | s_vertical_gradient_level, s_init(k) is set: s_init(k) = s_init(k-1) + |
---|
1760 | dzu(k) * <b>s_vertical_gradient</b>) up to the top |
---|
1761 | boundary or up to |
---|
1762 | the next height level defined by <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>. |
---|
1763 | A total of 10 different gradients for 11 height intervals (10 intervals |
---|
1764 | if <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>(1) |
---|
1765 | = <i>0.0</i>) can be assigned. The surface scalar value is |
---|
1766 | assigned |
---|
1767 | via <a href="#s_surface">s_surface</a>.<br> </p> |
---|
1768 | <p>Example: </p> <ul> <p><b>s_vertical_gradient</b> |
---|
1769 | = <i>0.1</i>, <i>0.05</i>, <br> |
---|
1770 | <b>s_vertical_gradient_level</b> = <i>500.0</i>, |
---|
1771 | <i>1000.0</i>,</p> </ul> <p>That |
---|
1772 | defines the scalar concentration to be constant with |
---|
1773 | height up to z = 500.0 m with a value given by <a href="#s_surface">s_surface</a>. |
---|
1774 | For 500.0 m < z <= 1000.0 m the scalar gradient is 0.1 |
---|
1775 | kg/m<sup>3 </sup>/ 100 m and for z > 1000.0 m up to |
---|
1776 | the top |
---|
1777 | boundary it is 0.05 kg/m<sup>3 </sup>/ 100 m (it is |
---|
1778 | assumed that the |
---|
1779 | assigned height levels |
---|
1780 | correspond with uv |
---|
1781 | levels).</p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="s_vertical_gradient_level"></a><b>s_vertical_gradient_</b> |
---|
1782 | <br> <b>level</b></p> </td> <td style="vertical-align: top;">R (10)</td> <td style="vertical-align: top;"> <p><i>10 *</i> |
---|
1783 | <i>0.0</i></p> </td> <td style="vertical-align: top;"> <p>Height level from |
---|
1784 | which on the scalar gradient defined by <a href="#s_vertical_gradient">s_vertical_gradient</a> |
---|
1785 | is effective (in m). </p> <p>The height levels |
---|
1786 | are to be assigned in ascending order. The |
---|
1787 | default values result in a scalar concentration constant with height |
---|
1788 | regardless of the values of <a href="#s_vertical_gradient">s_vertical_gradient</a> |
---|
1789 | (unless the top boundary of the model is higher than 100000.0 m). For |
---|
1790 | the |
---|
1791 | piecewise construction of scalar concentration profiles see <a href="#s_vertical_gradient">s_vertical_gradient</a>.</p> |
---|
1792 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="timestep_scheme"></a><b>timestep_scheme</b></p> |
---|
1793 | </td> <td style="vertical-align: top;">C * 20</td> |
---|
1794 | <td style="vertical-align: top;"> <p><i>'runge</i><br> |
---|
1795 | <i>kutta-3'</i></p> </td> <td style="vertical-align: top;"> <p>Time step scheme to |
---|
1796 | be used for the integration of the prognostic |
---|
1797 | variables. </p> <p>The user can choose between |
---|
1798 | the following schemes:<br> </p> <p><span style="font-style: italic;">'runge-kutta-3'</span><br> |
---|
1799 | </p> <div style="margin-left: 40px;">Third order |
---|
1800 | Runge-Kutta scheme.<br> |
---|
1801 | This scheme requires the use of <a href="#momentum_advec">momentum_advec</a> |
---|
1802 | = <a href="#scalar_advec">scalar_advec</a> |
---|
1803 | = '<i>pw-scheme'</i>. Please refer to the <a href="../tec/numerik.heiko/zeitschrittverfahren.pdf">documentation |
---|
1804 | on PALM's time integration schemes (28p., in German)</a> |
---|
1805 | fur further details.<br> </div> <p><span style="font-style: italic;">'runge-kutta-2'</span><br> |
---|
1806 | </p> <div style="margin-left: 40px;">Second order |
---|
1807 | Runge-Kutta scheme.<br> |
---|
1808 | For special features see <b>timestep_scheme</b> = '<i>runge-kutta-3'</i>.<br> |
---|
1809 | </div> <br> <span style="font-style: italic;"><span style="font-style: italic;">'leapfrog'</span><br> |
---|
1810 | <br> </span> <div style="margin-left: 40px;">Second |
---|
1811 | order leapfrog scheme.<br> |
---|
1812 | Although this scheme requires a constant timestep (because it is |
---|
1813 | centered in time), is even applied in case of changes in |
---|
1814 | timestep. Therefore, only small |
---|
1815 | changes of the timestep are allowed (see <a href="#dt">dt</a>). |
---|
1816 | However, an Euler timestep is always used as the first timestep of an |
---|
1817 | initiali run. When using the Bott-Chlond scheme for scalar advection |
---|
1818 | (see <a href="#scalar_advec">scalar_advec</a>), |
---|
1819 | the prognostic equation for potential temperature will be calculated |
---|
1820 | with the Euler scheme, although the leapfrog scheme is switched |
---|
1821 | on. <br> |
---|
1822 | The leapfrog scheme must not be used together with the upstream-spline |
---|
1823 | scheme for calculating the advection (see <a href="#scalar_advec">scalar_advec</a> |
---|
1824 | = '<i>ups-scheme'</i> and <a href="#momentum_advec">momentum_advec</a> |
---|
1825 | = '<i>ups-scheme'</i>).<br> </div> <br> |
---|
1826 | <span style="font-style: italic;">'</span><span style="font-style: italic;"><span style="font-style: italic;">leapfrog+euler'</span><br> |
---|
1827 | <br> </span> <div style="margin-left: 40px;">The |
---|
1828 | leapfrog scheme is used, but |
---|
1829 | after each change of a timestep an Euler timestep is carried out. |
---|
1830 | Although this method is theoretically correct (because the pure |
---|
1831 | leapfrog method does not allow timestep changes), the divergence of the |
---|
1832 | velocity field (after applying the pressure solver) may be |
---|
1833 | significantly larger than with <span style="font-style: italic;">'leapfrog'</span>.<br> |
---|
1834 | </div> <br> <span style="font-style: italic;">'euler'</span><br> |
---|
1835 | <br> <div style="margin-left: 40px;">First order |
---|
1836 | Euler scheme. <br> |
---|
1837 | The Euler scheme must be used when treating the advection terms with |
---|
1838 | the upstream-spline scheme (see <a href="#scalar_advec">scalar_advec</a> |
---|
1839 | = <span style="font-style: italic;">'ups-scheme'</span> |
---|
1840 | and <a href="#momentum_advec">momentum_advec</a> |
---|
1841 | = <span style="font-style: italic;">'ups-scheme'</span>).</div> |
---|
1842 | <br><br>A differing timestep scheme can be choosed for the |
---|
1843 | subgrid-scale TKE using parameter <a href="#use_upstream_for_tke">use_upstream_for_tke</a>.<br> |
---|
1844 | </td> </tr> <tr> <td style="text-align: left; vertical-align: top;"><span style="font-weight: bold;"><a name="topography"></a></span><span style="font-weight: bold;">topography</span></td> |
---|
1845 | <td style="vertical-align: top;">C * 40</td> <td style="vertical-align: top;"><span style="font-style: italic;">'flat'</span></td> <td> |
---|
1846 | <p>Topography mode. </p> <p>The user can |
---|
1847 | choose between the following modes:<br> </p> <p><span style="font-style: italic;">'flat'</span><br> </p> |
---|
1848 | <div style="margin-left: 40px;">Flat surface.</div> <p><span style="font-style: italic;">'single_building'</span><br> |
---|
1849 | </p> <div style="margin-left: 40px;">Flow |
---|
1850 | around a single rectangular building mounted on a flat surface.<br> |
---|
1851 | The building size and location can be specified with the parameters <a href="#building_height">building_height</a>, <a href="#building_length_x">building_length_x</a>, <a href="#building_length_y">building_length_y</a>, <a href="#building_wall_left">building_wall_left</a> and <a href="#building_wall_south">building_wall_south</a>.</div> |
---|
1852 | <span style="font-style: italic;"></span> <p><span style="font-style: italic;">'read_from_file'</span><br> |
---|
1853 | </p> <div style="margin-left: 40px;">Flow around |
---|
1854 | arbitrary topography.<br> |
---|
1855 | This mode requires the input file <a href="chapter_3.4.html#TOPOGRAPHY_DATA">TOPOGRAPHY_DATA</a><font color="#000000">. This file contains </font><font color="#000000"><font color="#000000">the </font></font><font color="#000000">arbitrary topography </font><font color="#000000"><font color="#000000">height |
---|
1856 | information</font></font><font color="#000000"> |
---|
1857 | in m. These data <span style="font-style: italic;"></span>must |
---|
1858 | exactly match the horizontal grid.</font> </div> <span style="font-style: italic;"><br> </span><font color="#000000"> |
---|
1859 | Alternatively, the user may add code to the user interface subroutine <a href="chapter_3.5.1.html#user_init_grid">user_init_grid</a> |
---|
1860 | to allow further topography modes.<br> <br> |
---|
1861 | All non-flat <span style="font-weight: bold;">topography</span> |
---|
1862 | modes </font>require the use of <a href="#momentum_advec">momentum_advec</a> |
---|
1863 | = <a href="#scalar_advec">scalar_advec</a> |
---|
1864 | = '<i>pw-scheme'</i>, <a href="chapter_4.2.html#psolver">psolver</a> |
---|
1865 | = <i>'poisfft'</i> or '<i>poisfft_hybrid'</i>, |
---|
1866 | <i> </i><a href="#alpha_surface">alpha_surface</a> |
---|
1867 | = 0.0, <a href="#bc_lr">bc_lr</a> = <a href="#bc_ns">bc_ns</a> = <span style="font-style: italic;">'cyclic'</span>, <a style="" href="#galilei_transformation">galilei_transformation</a> |
---|
1868 | = <span style="font-style: italic;">.F.</span>, <a href="#cloud_physics">cloud_physics </a> = <span style="font-style: italic;">.F.</span>, <a href="#cloud_droplets">cloud_droplets</a> = <span style="font-style: italic;">.F.</span>, <a href="#humidity">humidity</a> = <span style="font-style: italic;">.F.</span>, and <a href="#prandtl_layer">prandtl_layer</a> = .T..<br> |
---|
1869 | <font color="#000000"><br> |
---|
1870 | Note that an inclined model domain requires the use of <span style="font-weight: bold;">topography</span> = <span style="font-style: italic;">'flat'</span> and a |
---|
1871 | nonzero </font><a href="#alpha_surface">alpha_surface</a>.</td> |
---|
1872 | </tr> <tr><td style="vertical-align: top;"><a name="top_heatflux"></a><span style="font-weight: bold;">top_heatflux</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">no prescribed<br> |
---|
1873 | heatflux</span></td><td style="vertical-align: top;"><p>Kinematic |
---|
1874 | sensible heat flux at the top boundary (in K m/s). </p> |
---|
1875 | <p>If a value is assigned to this parameter, the internal |
---|
1876 | two-dimensional surface heat flux field <span style="font-family: monospace;">tswst</span> is |
---|
1877 | initialized with the value of <span style="font-weight: bold;">top_heatflux</span> as |
---|
1878 | top (horizontally homogeneous) boundary condition for the |
---|
1879 | temperature equation. This additionally requires that a Neumann |
---|
1880 | condition must be used for the potential temperature (see <a href="chapter_4.1.html#bc_pt_t">bc_pt_t</a>), |
---|
1881 | because otherwise the resolved scale may contribute to |
---|
1882 | the top flux so that a constant value cannot be guaranteed.<span style="font-style: italic;"></span> </p> |
---|
1883 | <p><span style="font-weight: bold;">Note:</span><br>The |
---|
1884 | application of a top heat flux additionally requires the setting of |
---|
1885 | initial parameter <a href="#use_top_fluxes">use_top_fluxes</a> |
---|
1886 | = .T..<span style="font-style: italic;"></span><span style="font-weight: bold;"></span> </p><p>No |
---|
1887 | Prandtl-layer is available at the top boundary so far.</p><p>See |
---|
1888 | also <a href="#surface_heatflux">surface_heatflux</a>.</p> |
---|
1889 | </td></tr><tr><td style="vertical-align: top;"><a name="top_salinityflux"></a><span style="font-weight: bold;">top_salinityflux</span></td><td style="vertical-align: top;">R</td><td style="vertical-align: top;"><span style="font-style: italic;">no prescribed<br> |
---|
1890 | salinityflux</span></td><td style="vertical-align: top;"><p>Kinematic |
---|
1891 | salinity flux at the top boundary, i.e. the sea surface (in psu m/s). </p> |
---|
1892 | <p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).</p><p>If a value is assigned to this parameter, the internal |
---|
1893 | two-dimensional surface heat flux field <span style="font-family: monospace;">saswst</span> is |
---|
1894 | initialized with the value of <span style="font-weight: bold;">top_salinityflux</span> as |
---|
1895 | top (horizontally homogeneous) boundary condition for the salinity equation. This additionally requires that a Neumann |
---|
1896 | condition must be used for the salinity (see <a href="chapter_4.1.html#bc_sa_t">bc_sa_t</a>), |
---|
1897 | because otherwise the resolved scale may contribute to |
---|
1898 | the top flux so that a constant value cannot be guaranteed.<span style="font-style: italic;"></span> </p> |
---|
1899 | <p><span style="font-weight: bold;">Note:</span><br>The |
---|
1900 | application of a salinity flux at the model top additionally requires the setting of |
---|
1901 | initial parameter <a href="chapter_4.1.html#use_top_fluxes">use_top_fluxes</a> |
---|
1902 | = .T..<span style="font-style: italic;"></span><span style="font-weight: bold;"></span> </p><p>See |
---|
1903 | also <a href="chapter_4.1.html#bottom_salinityflux">bottom_salinityflux</a>.</p></td></tr><tr> <td style="vertical-align: top;"> |
---|
1904 | <p><a name="ug_surface"></a><span style="font-weight: bold;">ug_surface</span></p> |
---|
1905 | </td> <td style="vertical-align: top;">R<br> </td> |
---|
1906 | <td style="vertical-align: top;"><span style="font-style: italic;">0.0</span><br> </td> |
---|
1907 | <td style="vertical-align: top;">u-component of the |
---|
1908 | geostrophic |
---|
1909 | wind at the surface (in m/s).<br> <br> |
---|
1910 | This parameter assigns the value of the u-component of the geostrophic |
---|
1911 | wind (ug) at the surface (k=0). Starting from this value, the initial |
---|
1912 | vertical profile of the <br> |
---|
1913 | u-component of the geostrophic wind is constructed with <a href="#ug_vertical_gradient">ug_vertical_gradient</a> |
---|
1914 | and <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>. |
---|
1915 | The |
---|
1916 | profile constructed in that way is used for creating the initial |
---|
1917 | vertical velocity profile of the 3d-model. Either it is applied, as it |
---|
1918 | has been specified by the user (<a href="#initializing_actions">initializing_actions</a> |
---|
1919 | = 'set_constant_profiles') or it is used for calculating a stationary |
---|
1920 | boundary layer wind profile (<a href="#initializing_actions">initializing_actions</a> |
---|
1921 | = 'set_1d-model_profiles'). If ug is constant with height (i.e. ug(k)=<span style="font-weight: bold;">ug_surface</span>) |
---|
1922 | and has a large |
---|
1923 | value, it is recommended to use a Galilei-transformation of the |
---|
1924 | coordinate system, if possible (see <a href="#galilei_transformation">galilei_transformation</a>), |
---|
1925 | in order to obtain larger time steps.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), |
---|
1926 | this parameter gives the velocity value at the sea surface, which is |
---|
1927 | at k=nzt. The profile is then constructed from the surface down to the |
---|
1928 | bottom of the model.<br> </td> </tr> |
---|
1929 | <tr> <td style="vertical-align: top;"> <p><a name="ug_vertical_gradient"></a><span style="font-weight: bold;">ug_vertical_gradient</span></p> |
---|
1930 | </td> <td style="vertical-align: top;">R(10)<br> |
---|
1931 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">10 |
---|
1932 | * 0.0</span><br> </td> <td style="vertical-align: top;">Gradient(s) of the initial |
---|
1933 | profile of the u-component of the geostrophic wind (in |
---|
1934 | 1/100s).<br> <br> |
---|
1935 | The gradient holds starting from the height level defined by <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a> |
---|
1936 | (precisely: for all uv levels k where zu(k) > <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>, |
---|
1937 | ug(k) is set: ug(k) = ug(k-1) + dzu(k) * <span style="font-weight: bold;">ug_vertical_gradient</span>) |
---|
1938 | up to the top |
---|
1939 | boundary or up to the next height level defined by <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>. |
---|
1940 | A |
---|
1941 | total of 10 different gradients for 11 height intervals (10 |
---|
1942 | intervals if <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>(1) |
---|
1943 | = 0.0) can be assigned. The surface geostrophic wind is assigned by <a href="#ug_surface">ug_surface</a>.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), |
---|
1944 | the profile is constructed like described above, but starting from the |
---|
1945 | sea surface (k=nzt) down to the bottom boundary of the model. Height |
---|
1946 | levels have then to be given as negative values, e.g. <span style="font-weight: bold;">ug_vertical_gradient_level</span> = <span style="font-style: italic;">-500.0</span>, <span style="font-style: italic;">-1000.0</span>.<br> </td> |
---|
1947 | </tr> <tr> <td style="vertical-align: top;"> |
---|
1948 | <p><a name="ug_vertical_gradient_level"></a><span style="font-weight: bold;">ug_vertical_gradient_level</span></p> |
---|
1949 | </td> <td style="vertical-align: top;">R(10)<br> |
---|
1950 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">10 |
---|
1951 | * 0.0</span><br> </td> <td style="vertical-align: top;">Height level from which on the |
---|
1952 | gradient defined by <a href="#ug_vertical_gradient">ug_vertical_gradient</a> |
---|
1953 | is effective (in m).<br> <br> |
---|
1954 | The height levels have to be assigned in ascending order. For the |
---|
1955 | piecewise construction of a profile of the u-component of the |
---|
1956 | geostrophic wind component (ug) see <a href="#ug_vertical_gradient">ug_vertical_gradient</a>.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), the (negative) height levels have to be assigned in descending order.</td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="ups_limit_e"></a><b>ups_limit_e</b></p> |
---|
1957 | </td> <td style="vertical-align: top;">R</td> |
---|
1958 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1959 | <td style="vertical-align: top;"> <p>Subgrid-scale |
---|
1960 | turbulent kinetic energy difference used as |
---|
1961 | criterion for applying the upstream scheme when upstream-spline |
---|
1962 | advection is switched on (in m<sup>2</sup>/s<sup>2</sup>). |
---|
1963 | </p> <p>This variable steers the appropriate |
---|
1964 | treatment of the |
---|
1965 | advection of the subgrid-scale turbulent kinetic energy in case that |
---|
1966 | the uptream-spline scheme is used . For further information see <a href="#ups_limit_pt">ups_limit_pt</a>. </p> |
---|
1967 | <p>Only positive values are allowed for <b>ups_limit_e</b>. |
---|
1968 | </p> </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="ups_limit_pt"></a><b>ups_limit_pt</b></p> |
---|
1969 | </td> <td style="vertical-align: top;">R</td> |
---|
1970 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
1971 | <td style="vertical-align: top;"> <p>Temperature |
---|
1972 | difference used as criterion for applying |
---|
1973 | the upstream scheme when upstream-spline advection is |
---|
1974 | switched on |
---|
1975 | (in K). </p> <p>This criterion is used if the |
---|
1976 | upstream-spline scheme is |
---|
1977 | switched on (see <a href="#scalar_advec">scalar_advec</a>).<br> |
---|
1978 | If, for a given gridpoint, the absolute temperature difference with |
---|
1979 | respect to the upstream |
---|
1980 | grid point is smaller than the value given for <b>ups_limit_pt</b>, |
---|
1981 | the upstream scheme is used for this gridpoint (by default, the |
---|
1982 | upstream-spline scheme is always used). Reason: in case of a very small |
---|
1983 | upstream gradient, the advection should cause only a very small |
---|
1984 | tendency. However, in such situations the upstream-spline scheme may |
---|
1985 | give wrong tendencies at a |
---|
1986 | grid point due to spline overshooting, if simultaneously the downstream |
---|
1987 | gradient is very large. In such cases it may be more reasonable to use |
---|
1988 | the upstream scheme. The numerical diffusion caused by the upstream |
---|
1989 | schme remains small as long as the upstream gradients are small.<br> |
---|
1990 | </p> <p>The percentage of grid points for which the |
---|
1991 | upstream |
---|
1992 | scheme is actually used, can be output as a time series with respect to |
---|
1993 | the |
---|
1994 | three directions in space with run parameter (see <a href="chapter_4.2.html#dt_dots">dt_dots</a>, the |
---|
1995 | timeseries names in the NetCDF file are <i>'splptx'</i>, <i>'splpty'</i>, |
---|
1996 | <i>'splptz'</i>). The percentage |
---|
1997 | of gridpoints should stay below a certain limit, however, it |
---|
1998 | is |
---|
1999 | not possible to give |
---|
2000 | a general limit, since it depends on the respective flow. </p> |
---|
2001 | <p>Only positive values are permitted for <b>ups_limit_pt</b>.<br> |
---|
2002 | </p> |
---|
2003 | A more effective control of |
---|
2004 | the “overshoots” can be achieved with parameter <a href="#cut_spline_overshoot">cut_spline_overshoot</a>. |
---|
2005 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="ups_limit_u"></a><b>ups_limit_u</b></p> |
---|
2006 | </td> <td style="vertical-align: top;">R</td> |
---|
2007 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
2008 | <td style="vertical-align: top;"> <p>Velocity |
---|
2009 | difference (u-component) used as criterion for |
---|
2010 | applying the upstream scheme |
---|
2011 | when upstream-spline advection is switched on (in m/s). </p> |
---|
2012 | <p>This variable steers the appropriate treatment of the |
---|
2013 | advection of the u-velocity-component in case that the upstream-spline |
---|
2014 | scheme is used. For further |
---|
2015 | information see <a href="#ups_limit_pt">ups_limit_pt</a>. |
---|
2016 | </p> <p>Only positive values are permitted for <b>ups_limit_u</b>.</p> |
---|
2017 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="ups_limit_v"></a><b>ups_limit_v</b></p> |
---|
2018 | </td> <td style="vertical-align: top;">R</td> |
---|
2019 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
2020 | <td style="vertical-align: top;"> <p>Velocity |
---|
2021 | difference (v-component) used as criterion for |
---|
2022 | applying the upstream scheme |
---|
2023 | when upstream-spline advection is switched on (in m/s). </p> |
---|
2024 | <p>This variable steers the appropriate treatment of the |
---|
2025 | advection of the v-velocity-component in case that the upstream-spline |
---|
2026 | scheme is used. For further |
---|
2027 | information see <a href="#ups_limit_pt">ups_limit_pt</a>. |
---|
2028 | </p> <p>Only positive values are permitted for <b>ups_limit_v</b>.</p> |
---|
2029 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="ups_limit_w"></a><b>ups_limit_w</b></p> |
---|
2030 | </td> <td style="vertical-align: top;">R</td> |
---|
2031 | <td style="vertical-align: top;"><i>0.0</i></td> |
---|
2032 | <td style="vertical-align: top;"> <p>Velocity |
---|
2033 | difference (w-component) used as criterion for |
---|
2034 | applying the upstream scheme |
---|
2035 | when upstream-spline advection is switched on (in m/s). </p> |
---|
2036 | <p>This variable steers the appropriate treatment of the |
---|
2037 | advection of the w-velocity-component in case that the upstream-spline |
---|
2038 | scheme is used. For further |
---|
2039 | information see <a href="#ups_limit_pt">ups_limit_pt</a>. |
---|
2040 | </p> <p>Only positive values are permitted for <b>ups_limit_w</b>.</p> |
---|
2041 | </td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="use_surface_fluxes"></a><b>use_surface_fluxes</b></p> |
---|
2042 | </td> <td style="vertical-align: top;">L</td> |
---|
2043 | <td style="vertical-align: top;"><i>.F.</i></td> |
---|
2044 | <td style="vertical-align: top;"> <p>Parameter to |
---|
2045 | steer the treatment of the subgrid-scale vertical |
---|
2046 | fluxes within the diffusion terms at k=1 (bottom boundary).<br> </p> |
---|
2047 | <p>By default, the near-surface subgrid-scale fluxes are |
---|
2048 | parameterized (like in the remaining model domain) using the gradient |
---|
2049 | approach. If <b>use_surface_fluxes</b> |
---|
2050 | = <i>.TRUE.</i>, the user-assigned surface fluxes are used |
---|
2051 | instead |
---|
2052 | (see <a href="#surface_heatflux">surface_heatflux</a>, |
---|
2053 | <a href="#surface_waterflux">surface_waterflux</a> |
---|
2054 | and <a href="#surface_scalarflux">surface_scalarflux</a>) |
---|
2055 | <span style="font-weight: bold;">or</span> the |
---|
2056 | surface fluxes are |
---|
2057 | calculated via the Prandtl layer relation (depends on the bottom |
---|
2058 | boundary conditions, see <a href="#bc_pt_b">bc_pt_b</a>, |
---|
2059 | <a href="#bc_q_b">bc_q_b</a> |
---|
2060 | and <a href="#bc_s_b">bc_s_b</a>).<br> </p> |
---|
2061 | <p><b>use_surface_fluxes</b> |
---|
2062 | is automatically set <i>.TRUE.</i>, if a Prandtl layer is |
---|
2063 | used (see <a href="#prandtl_layer">prandtl_layer</a>). |
---|
2064 | </p> <p>The user may prescribe the surface fluxes at the |
---|
2065 | bottom |
---|
2066 | boundary without using a Prandtl layer by setting <span style="font-weight: bold;">use_surface_fluxes</span> = |
---|
2067 | <span style="font-style: italic;">.T.</span> and <span style="font-weight: bold;">prandtl_layer</span> = <span style="font-style: italic;">.F.</span>. If , in this |
---|
2068 | case, the |
---|
2069 | momentum flux (u<sub>*</sub><sup>2</sup>) |
---|
2070 | should also be prescribed, |
---|
2071 | the user must assign an appropriate value within the user-defined code.</p> |
---|
2072 | </td> </tr> <tr><td style="vertical-align: top;"><a name="use_top_fluxes"></a><span style="font-weight: bold;">use_top_fluxes</span></td><td style="vertical-align: top;">L</td><td style="vertical-align: top;"><span style="font-style: italic;">.F.</span></td><td style="vertical-align: top;"> <p>Parameter to steer |
---|
2073 | the treatment of the subgrid-scale vertical |
---|
2074 | fluxes within the diffusion terms at k=nz (top boundary).</p><p>By |
---|
2075 | default, the fluxes at nz are calculated using the gradient approach. |
---|
2076 | If <b>use_top_fluxes</b> |
---|
2077 | = <i>.TRUE.</i>, the user-assigned top fluxes are used |
---|
2078 | instead |
---|
2079 | (see <a href="chapter_4.1.html#top_heatflux">top_heatflux</a>).</p><p>Currently, |
---|
2080 | only a value for the sensible heatflux can be assigned. In case of <span style="font-weight: bold;">use_top_fluxes</span> = <span style="font-style: italic;">.TRUE.</span>, the latent |
---|
2081 | heat flux at the top will be automatically set to zero.</p></td></tr><tr> |
---|
2082 | <td style="vertical-align: top;"> <p><a name="use_ug_for_galilei_tr"></a><b>use_ug_for_galilei_tr</b></p> |
---|
2083 | </td> <td style="vertical-align: top;">L</td> |
---|
2084 | <td style="vertical-align: top;"><i>.T.</i></td> |
---|
2085 | <td style="vertical-align: top;"> <p>Switch to |
---|
2086 | determine the translation velocity in case that a |
---|
2087 | Galilean transformation is used.<br> </p> <p>In |
---|
2088 | case of a Galilean transformation (see <a href="#galilei_transformation">galilei_transformation</a>), |
---|
2089 | <b>use_ug_for_galilei_tr</b> |
---|
2090 | = <i>.T.</i> ensures |
---|
2091 | that the coordinate system is translated with the geostrophic windspeed.<br> |
---|
2092 | </p> <p>Alternatively, with <b>use_ug_for_galilei_tr</b> |
---|
2093 | = <i>.F</i>., |
---|
2094 | the |
---|
2095 | geostrophic wind can be replaced as translation speed by the (volume) |
---|
2096 | averaged velocity. However, in this case the user must be aware of fast |
---|
2097 | growing gravity waves, so this |
---|
2098 | choice is usually not recommended!</p> </td> </tr> <tr><td align="left" valign="top"><a name="use_upstream_for_tke"></a><span style="font-weight: bold;">use_upstream_for_tke</span></td><td align="left" valign="top">L</td><td align="left" valign="top"><span style="font-style: italic;">.F.</span></td><td align="left" valign="top">Parameter to choose the |
---|
2099 | advection/timestep scheme to be used for the subgrid-scale TKE.<br><br>By |
---|
2100 | default, the advection scheme and the timestep scheme to be used for |
---|
2101 | the subgrid-scale TKE are set by the initialization parameters <a href="#scalar_advec">scalar_advec</a> and <a href="#timestep_scheme">timestep_scheme</a>, |
---|
2102 | respectively. <span style="font-weight: bold;">use_upstream_for_tke</span> |
---|
2103 | = <span style="font-style: italic;">.T.</span> |
---|
2104 | forces the Euler-scheme and the upstream-scheme to be used as timestep |
---|
2105 | scheme and advection scheme, respectively. By these methods, the strong |
---|
2106 | (artificial) near-surface vertical gradients of the subgrid-scale TKE |
---|
2107 | are significantly reduced. This is required when subgrid-scale |
---|
2108 | velocities are used for advection of particles (see particle package |
---|
2109 | parameter <a href="chapter_4.2.html#use_sgs_for_particles">use_sgs_for_particles</a>).</td></tr><tr> |
---|
2110 | <td style="vertical-align: top;"> <p><a name="vg_surface"></a><span style="font-weight: bold;">vg_surface</span></p> |
---|
2111 | </td> <td style="vertical-align: top;">R<br> </td> |
---|
2112 | <td style="vertical-align: top;"><span style="font-style: italic;">0.0</span><br> </td> |
---|
2113 | <td style="vertical-align: top;">v-component of the |
---|
2114 | geostrophic |
---|
2115 | wind at the surface (in m/s).<br> <br> |
---|
2116 | This parameter assigns the value of the v-component of the geostrophic |
---|
2117 | wind (vg) at the surface (k=0). Starting from this value, the initial |
---|
2118 | vertical profile of the <br> |
---|
2119 | v-component of the geostrophic wind is constructed with <a href="#vg_vertical_gradient">vg_vertical_gradient</a> |
---|
2120 | and <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>. |
---|
2121 | The |
---|
2122 | profile |
---|
2123 | constructed in that way is used for creating the initial vertical |
---|
2124 | velocity profile of the 3d-model. Either it is applied, as it has been |
---|
2125 | specified by the user (<a href="#initializing_actions">initializing_actions</a> |
---|
2126 | = 'set_constant_profiles') |
---|
2127 | or it is used for calculating a stationary boundary layer wind profile |
---|
2128 | (<a href="#initializing_actions">initializing_actions</a> |
---|
2129 | = |
---|
2130 | 'set_1d-model_profiles'). If vg is constant |
---|
2131 | with height (i.e. vg(k)=<span style="font-weight: bold;">vg_surface</span>) |
---|
2132 | and has a large value, it is |
---|
2133 | recommended to use a Galilei-transformation of the coordinate system, |
---|
2134 | if possible (see <a href="#galilei_transformation">galilei_transformation</a>), |
---|
2135 | in order to obtain larger |
---|
2136 | time steps.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), |
---|
2137 | this parameter gives the velocity value at the sea surface, which is |
---|
2138 | at k=nzt. The profile is then constructed from the surface down to the |
---|
2139 | bottom of the model.</td> </tr> <tr> <td style="vertical-align: top;"> <p><a name="vg_vertical_gradient"></a><span style="font-weight: bold;">vg_vertical_gradient</span></p> |
---|
2140 | </td> <td style="vertical-align: top;">R(10)<br> |
---|
2141 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">10 |
---|
2142 | * 0.0</span><br> </td> <td style="vertical-align: top;">Gradient(s) of the initial |
---|
2143 | profile of the v-component of the geostrophic wind (in |
---|
2144 | 1/100s).<br> <br> |
---|
2145 | The gradient holds starting from the height level defined by <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a> |
---|
2146 | (precisely: for all uv levels k where zu(k) |
---|
2147 | > <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>, |
---|
2148 | vg(k) is set: vg(k) = vg(k-1) + dzu(k) |
---|
2149 | * <span style="font-weight: bold;">vg_vertical_gradient</span>) |
---|
2150 | up to |
---|
2151 | the top boundary or up to the next height |
---|
2152 | level defined by <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>. |
---|
2153 | A total of 10 different |
---|
2154 | gradients for 11 height intervals (10 intervals if <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>(1) |
---|
2155 | = |
---|
2156 | 0.0) can be assigned. The surface |
---|
2157 | geostrophic wind is assigned by <a href="#vg_surface">vg_surface</a>.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), |
---|
2158 | the profile is constructed like described above, but starting from the |
---|
2159 | sea surface (k=nzt) down to the bottom boundary of the model. Height |
---|
2160 | levels have then to be given as negative values, e.g. <span style="font-weight: bold;">vg_vertical_gradient_level</span> = <span style="font-style: italic;">-500.0</span>, <span style="font-style: italic;">-1000.0</span>.</td> |
---|
2161 | </tr> <tr> <td style="vertical-align: top;"> |
---|
2162 | <p><a name="vg_vertical_gradient_level"></a><span style="font-weight: bold;">vg_vertical_gradient_level</span></p> |
---|
2163 | </td> <td style="vertical-align: top;">R(10)<br> |
---|
2164 | </td> <td style="vertical-align: top;"><span style="font-style: italic;">10 |
---|
2165 | * 0.0</span><br> </td> <td style="vertical-align: top;">Height level from which on the |
---|
2166 | gradient defined by <a href="#vg_vertical_gradient">vg_vertical_gradient</a> |
---|
2167 | is effective (in m).<br> <br> |
---|
2168 | The height levels have to be assigned in ascending order. For the |
---|
2169 | piecewise construction of a profile of the v-component of the |
---|
2170 | geostrophic wind component (vg) see <a href="#vg_vertical_gradient">vg_vertical_gradient</a>.<br><br><span style="font-weight: bold;">Attention:</span><br>In case of ocean runs (see <a href="chapter_4.1.html#ocean">ocean</a>), the (negative) height levels have to be assigned in descending order.</td> |
---|
2171 | </tr> <tr> <td style="vertical-align: top;"> |
---|
2172 | <p><a name="wall_adjustment"></a><b>wall_adjustment</b></p> |
---|
2173 | </td> <td style="vertical-align: top;">L</td> |
---|
2174 | <td style="vertical-align: top;"><i>.T.</i></td> |
---|
2175 | <td style="vertical-align: top;"> <p>Parameter to |
---|
2176 | restrict the mixing length in the vicinity of the |
---|
2177 | bottom |
---|
2178 | boundary. </p> <p>With <b>wall_adjustment</b> |
---|
2179 | = <i>.TRUE., </i>the mixing |
---|
2180 | length is limited to a maximum of 1.8 * z. This condition |
---|
2181 | typically affects only the |
---|
2182 | first grid points above the bottom boundary.</p> </td> </tr> |
---|
2183 | <tr> <td style="vertical-align: top;"><span style="font-weight: bold;"><a name="wall_heatflux"></a>wall_heatflux</span></td> |
---|
2184 | <td style="vertical-align: top;">R(5)</td> <td style="vertical-align: top;"><span style="font-style: italic;">5 * 0.0</span></td> <td>Prescribed |
---|
2185 | kinematic sensible heat flux in W m<sup>-2</sup> |
---|
2186 | at the five topography faces:<br> <br> <div style="margin-left: 40px;"><span style="font-weight: bold;">wall_heatflux(0) |
---|
2187 | </span>top face<br> <span style="font-weight: bold;">wall_heatflux(1) |
---|
2188 | </span>left face<br> <span style="font-weight: bold;">wall_heatflux(2) |
---|
2189 | </span>right face<br> <span style="font-weight: bold;">wall_heatflux(3) |
---|
2190 | </span>south face<br> <span style="font-weight: bold;">wall_heatflux(4) |
---|
2191 | </span>north face</div> <br> |
---|
2192 | This parameter applies only in case of a non-flat <a href="#topography">topography</a>. The |
---|
2193 | parameter <a href="#random_heatflux">random_heatflux</a> |
---|
2194 | can be used to impose random perturbations on the internal |
---|
2195 | two-dimensional surface heat |
---|
2196 | flux field <span style="font-style: italic;">shf</span> |
---|
2197 | that is composed of <a href="#surface_heatflux">surface_heatflux</a> |
---|
2198 | at the bottom surface and <span style="font-weight: bold;">wall_heatflux(0)</span> |
---|
2199 | at the topography top face. </td> </tr> </tbody> |
---|
2200 | </table><br> |
---|
2201 | <p style="line-height: 100%;"><br><font color="#000080"><font color="#000080"><a href="chapter_4.0.html"><font color="#000080"><img name="Grafik1" src="left.gif" align="bottom" border="2" height="32" width="32"></font></a><a href="index.html"><font color="#000080"><img name="Grafik2" src="up.gif" align="bottom" border="2" height="32" width="32"></font></a><a href="chapter_4.2.html"><font color="#000080"><img name="Grafik3" src="right.gif" align="bottom" border="2" height="32" width="32"></font></a></font></font></p> |
---|
2202 | <p style="line-height: 100%;"><i>Last |
---|
2203 | change: </i> $Id: chapter_4.1.html 97 2007-06-21 08:23:15Z raasch $ </p> |
---|
2204 | <br><br> |
---|
2205 | </body></html> |
---|