source: palm/tags/release-3.3/DOC/app/chapter_4.1.html @ 4418

Last change on this file since 4418 was 97, checked in by raasch, 17 years ago

New:
---
ocean version including prognostic equation for salinity and equation of state for seawater. Routine buoyancy can be used with both temperature and density.
+ inipar-parameters bc_sa_t, bottom_salinityflux, ocean, sa_surface, sa_vertical_gradient, sa_vertical_gradient_level, top_salinityflux

advec_s_bc, average_3d_data, boundary_conds, buoyancy, check_parameters, data_output_2d, data_output_3d, diffusion_e, flow_statistics, header, init_grid, init_3d_model, modules, netcdf, parin, production_e, prognostic_equations, read_var_list, sum_up_3d_data, swap_timelevel, time_integration, user_interface, write_var_list, write_3d_binary

New:
eqn_state_seawater, init_ocean

Changed:


inipar-parameter use_pt_reference renamed use_reference

hydro_press renamed hyp, routine calc_mean_pt_profile renamed calc_mean_profile

format adjustments for the ocean version (run_control)

advec_particles, buoyancy, calc_liquid_water_content, check_parameters, diffusion_e, diffusivities, header, init_cloud_physics, modules, production_e, prognostic_equations, run_control

Errors:


Bugfix: height above topography instead of height above level k=0 is used for calculating the mixing length (diffusion_e and diffusivities).

Bugfix: error in boundary condition for TKE removed (advec_s_bc)

advec_s_bc, diffusion_e, prognostic_equations

  • Property svn:keywords set to Id
File size: 150.5 KB
Line 
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
5Initialization 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
15mixing length to the Prandtl-layer law.&nbsp; </p> <p>Usually
16the mixing length in LES models l<sub>LES</sub>
17depends (as in PALM) on the grid size and is possibly restricted
18further in case of stable stratification and near the lower wall (see
19parameter <a href="#wall_adjustment">wall_adjustment</a>).
20With <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span>
21the Prandtl' mixing length l<sub>PR</sub> = kappa * z/phi
22is calculated
23and the mixing length actually used in the model is set l = MIN (l<sub>LES</sub>,
24l<sub>PR</sub>). This usually gives a decrease of the
25mixing length at
26the bottom boundary and considers the fact that eddy sizes
27decrease in the vicinity of the wall.&nbsp; </p> <p style="font-style: normal;"><b>Warning:</b> So
28far, there is
29no good experience with <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span> !&nbsp; </p>
30<p>With <b>adjust_mixing_length</b> = <span style="font-style: italic;">.T.</span> and the
31Prandtl-layer being
32switched on (see <a href="#prandtl_layer">prandtl_layer</a>)
33<span style="font-style: italic;">'(u*)** 2+neumann'</span>
34should always be set as the lower boundary condition for the TKE (see <a href="#bc_e_b">bc_e_b</a>),
35otherwise the near-surface value of the TKE is not in agreement with
36the Prandtl-layer law (Prandtl-layer law and Prandtl-Kolmogorov-Ansatz
37should provide the same value for K<sub>m</sub>). A warning
38is given,
39if 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
44with respect to the horizontal (in degrees).&nbsp; </p> <p style="font-style: normal;">By means of <b>alpha_surface</b>
45the model domain can be inclined in x-direction with respect to the
46horizontal. In this way flows over inclined surfaces (e.g. drainage
47flows, gravity flows) can be simulated. In case of <b>alpha_surface
48</b>/= <span style="font-style: italic;">0</span>
49the buoyancy term
50appears both in
51the equation of motion of the u-component and of the w-component.<br>
52</p> <p style="font-style: normal;">An inclination
53is only possible in
54case of cyclic horizontal boundary conditions along x AND y (see <a href="#bc_lr">bc_lr</a>
55and <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
57user-defined code as well as modifications to the default code. Please
58ask the <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/PALM_group.html#0">PALM
59developer&nbsp; 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
63TKE.&nbsp; </p> <p><b>bc_e_b</b> may be
64set to&nbsp;<span style="font-style: italic;">'neumann'</span>
65or <span style="font-style: italic;">'(u*) ** 2+neumann'</span>.
66<b>bc_e_b</b>
67= <span style="font-style: italic;">'neumann'</span>
68yields to
69e(k=0)=e(k=1) (Neumann boundary condition), where e(k=1) is calculated
70via the prognostic TKE equation. Choice of <span style="font-style: italic;">'(u*)**2+neumann'</span>
71also yields to
72e(k=0)=e(k=1), but the TKE at the Prandtl-layer top (k=1) is calculated
73diagnostically by e(k=1)=(us/0.1)**2. However, this is only allowed if
74a Prandtl-layer is used (<a href="#prandtl_layer">prandtl_layer</a>).
75If this is not the case, a warning is given and <b>bc_e_b</b>
76is reset
77to <span style="font-style: italic;">'neumann'</span>.&nbsp;
78</p> <p style="font-style: normal;">At the top
79boundary a Neumann
80boundary 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
86condition along x (for all quantities).<br> <br>
87By default, a cyclic boundary condition is used along x.<br> <br>
88<span style="font-weight: bold;">bc_lr</span> may
89also be
90assigned 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
93right, outflow to the left). This requires the multi-grid method to be
94used 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>)
95and it also requires cyclic boundary conditions along y (see&nbsp;<a href="#bc_ns">bc_ns</a>).<br> <br>
96In case of these non-cyclic lateral boundaries, a Dirichlet condition
97is used at the inflow for all quantities (initial vertical profiles -
98see <a href="#initializing_actions">initializing_actions</a>
99- are fixed during the run) except u, to which a Neumann (zero
100gradient) condition is applied. At the outflow, a radiation condition is used for all velocity components, while a Neumann (zero
101gradient) condition is used for the scalars. For perturbation
102pressure Neumann (zero gradient) conditions are assumed both at the
103inflow and at the outflow.<br> <br>
104When using non-cyclic lateral boundaries, a filter is applied to the
105velocity field in the vicinity of the outflow in order to suppress any
106reflections of outgoing disturbances (see <a href="#km_damp_max">km_damp_max</a>
107and <a href="#outflow_damping_width">outflow_damping_width</a>).<br>
108<br>
109In order to maintain a turbulent state of the flow, it may be
110neccessary to continuously impose perturbations on the horizontal
111velocity field in the vicinity of the inflow throughout the whole run.
112This 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>.
113The horizontal range to which these perturbations are applied is
114controlled by the parameters <a href="#inflow_disturbance_begin">inflow_disturbance_begin</a>
115and <a href="#inflow_disturbance_end">inflow_disturbance_end</a>.
116The 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>,
118and <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/doc/app/chapter_4.2.html#psolver">disturbance_amplitude</a>.
119The 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>
121In 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
122at_all_substeps</a> = .T. should be used.<br> <br> <span style="font-weight: bold;">Note:</span><br>
123Using non-cyclic lateral boundaries requires very sensitive adjustments
124of the inflow (vertical profiles) and the bottom boundary conditions,
125e.g. a surface heating should not be applied near the inflow boundary
126because this may significantly disturb the inflow. Please check the
127model 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
131condition along y (for all quantities).<br> <br>
132By default, a cyclic boundary condition is used along y.<br> <br>
133<span style="font-weight: bold;">bc_ns</span> may
134also be
135assigned 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
138requires the multi-grid
139method to be used for solving the Poisson equation for perturbation
140pressure (see <a href="chapter_4.2.html#psolver">psolver</a>)
141and it also requires cyclic boundary conditions along x (see<br> <a href="#bc_lr">bc_lr</a>).<br> <br>
142In case of these non-cyclic lateral boundaries, a Dirichlet condition
143is used at the inflow for all quantities (initial vertical profiles -
144see <a href="chapter_4.1.html#initializing_actions">initializing_actions</a>
145- are fixed during the run) except u, to which a Neumann (zero
146gradient) condition is applied. At the outflow, a radiation condition is used for all velocity components, while a Neumann (zero
147gradient) condition is used for the scalars. For perturbation
148pressure Neumann (zero gradient) conditions are assumed both at the
149inflow and at the outflow.<br> <br>
150For further details regarding non-cyclic lateral boundary conditions
151see <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
155perturbation pressure.&nbsp; </p> <p>Allowed values
156are <span style="font-style: italic;">'dirichlet'</span>,
157<span style="font-style: italic;">'neumann'</span>
158and <span style="font-style: italic;">'neumann+inhomo'</span>.&nbsp;
159<span style="font-style: italic;">'dirichlet'</span>
160sets
161p(k=0)=0.0,&nbsp; <span style="font-style: italic;">'neumann'</span>
162sets p(k=0)=p(k=1). <span style="font-style: italic;">'neumann+inhomo'</span>
163corresponds to an extended Neumann boundary condition where heat flux
164or temperature inhomogeneities near the
165surface (pt(k=1))&nbsp; are additionally regarded (see Shen and
166LeClerc
167(1995, Q.J.R. Meteorol. Soc.,
1681209)). This condition is only permitted with the Prandtl-layer
169switched on (<a href="#prandtl_layer">prandtl_layer</a>),
170otherwise the run is terminated.&nbsp; </p> <p>Since
171at the bottom boundary of the model the vertical
172velocity
173disappears (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>)
174dp/dz = 0 should
175be used, which leaves the vertical component w unchanged when the
176pressure solver is applied. Simultaneous use of the Neumann boundary
177conditions both at the bottom and at the top boundary (<a href="#bc_p_t">bc_p_t</a>)
178usually yields no consistent solution for the perturbation pressure and
179should 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
183perturbation pressure.&nbsp; </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)).&nbsp; </p> <p>Simultaneous use
186of Neumann boundary conditions both at the
187top and bottom boundary (<a href="#bc_p_b">bc_p_b</a>)
188usually yields no consistent solution for the perturbation pressure and
189should be avoided. Since at the bottom boundary the Neumann
190condition&nbsp; is a good choice (see <a href="#bc_p_b">bc_p_b</a>),
191a 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
197potential temperature.&nbsp; </p> <p>Allowed values
198are <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>;
201the user may change this value during the run using user-defined code)
202and <span style="font-style: italic;">'neumann'</span>
203(pt(k=0)=pt(k=1)).&nbsp; <br>
204When 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>
206must be used, because otherwise the resolved scale may contribute to
207the 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
212potential temperature.&nbsp; </p> <p>Allowed are the
213values <span style="font-style: italic;">'dirichlet' </span>(pt(k=nz+1)
214does 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>.
216With the 'initial_gradient'-condition the value of the temperature
217gradient at the top is
218calculated from the initial
219temperature profile (see <a href="#pt_surface">pt_surface</a>,
220<a href="#pt_vertical_gradient">pt_vertical_gradient</a>)
221by bc_pt_t_val = (pt_init(k=nz+1) -
222pt_init(k=nz)) / dzu(nz+1).<br>
223Using this value (assumed constant during the
224run) the temperature boundary values are calculated as&nbsp; </p>
225<ul> <p style="font-style: normal;">pt(k=nz+1) =
226pt(k=nz) +
227bc_pt_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up to k=nz the prognostic
228equation for the temperature is solved).<br>
229When 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>
231must be used, because otherwise the resolved scale may contribute to
232the 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
238specific humidity / total water content.&nbsp; </p> <p>Allowed
239values 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>;
242the user may change this value during the run using user-defined code)
243and <span style="font-style: italic;">'neumann'</span>
244(q(k=0)=q(k=1)).&nbsp; <br>
245When 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>
247must be used, because otherwise the resolved scale may contribute to
248the 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
253specific humidity / total water content.&nbsp; </p> <p>Allowed
254are the values <span style="font-style: italic;">'dirichlet'</span>
255(q(k=nz) and q(k=nz+1) do
256not change during the run) and <span style="font-style: italic;">'neumann'</span>.
257With the Neumann boundary
258condition the value of the humidity gradient at the top is calculated
259from the
260initial humidity profile (see <a href="#q_surface">q_surface</a>,
261<a href="#q_vertical_gradient">q_vertical_gradient</a>)
262by: bc_q_t_val = ( q_init(k=nz) - q_init(k=nz-1)) / dzu(nz).<br>
263Using this value (assumed constant during the run) the humidity
264boundary values
265are calculated as&nbsp; </p> <ul> <p style="font-style: normal;">q(k=nz+1) =q(k=nz) +
266bc_q_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up tp k=nz the prognostic
267equation 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
271scalar concentration.&nbsp; </p> <p>Allowed values
272are <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>;
275the user may change this value during the run using user-defined code)
276and <span style="font-style: italic;">'neumann'</span>
277(s(k=0) =
278s(k=1)).&nbsp; <br>
279When 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>
281must be used, because otherwise the resolved scale may contribute to
282the 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
287scalar concentration.&nbsp; </p> <p>Allowed are the
288values <span style="font-style: italic;">'dirichlet'</span>
289(s(k=nz) and s(k=nz+1) do
290not change during the run) and <span style="font-style: italic;">'neumann'</span>.
291With the Neumann boundary
292condition the value of the scalar concentration gradient at the top is
293calculated
294from the initial scalar concentration profile (see <a href="#s_surface">s_surface</a>, <a href="#s_vertical_gradient">s_vertical_gradient</a>)
295by: bc_s_t_val = (s_init(k=nz) - s_init(k=nz-1)) / dzu(nz).<br>
296Using this value (assumed constant during the run) the concentration
297boundary values
298are calculated as </p> <ul> <p style="font-style: normal;">s(k=nz+1) = s(k=nz) +
299bc_s_t_val * dzu(nz+1)</p> </ul> <p style="font-style: normal;">(up to k=nz the prognostic
300equation for the scalar concentration is
301solved).</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.&nbsp; </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
302values <span style="font-style: italic;">'dirichlet' </span>(sa(k=nz+1)
303does 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>.&nbsp;<br><br>
305When 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>
307must be used, because otherwise the resolved scale may contribute to
308the 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
312horizontal velocity components u and v.&nbsp; </p> <p>Allowed
313values 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>
316yields the
317no-slip condition with u=v=0 at the bottom. Due to the staggered grid
318u(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 *
320dz. u=v=0 at the bottom is guaranteed using mirror boundary
321condition:&nbsp; </p> <ul> <p style="font-style: normal;">u(k=0) = - u(k=1) and v(k=0) = -
322v(k=1)</p> </ul> <p style="font-style: normal;">The
323Neumann boundary condition
324yields the free-slip condition with u(k=0) = u(k=1) and v(k=0) =
325v(k=1).
326With Prandtl - layer switched on, the free-slip condition is not
327allowed (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
332horizontal velocity components u and v.&nbsp; </p> <p>Allowed
333values are <span style="font-style: italic;">'dirichlet'</span>
334and <span style="font-style: italic;">'neumann'</span>.
335The
336Dirichlet condition yields u(k=nz+1) = ug(nz+1) and v(k=nz+1) =
337vg(nz+1),
338Neumann condition yields the free-slip condition with u(k=nz+1) =
339u(k=nz) and v(k=nz+1) = v(k=nz) (up to k=nz the prognostic equations
340for 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).&nbsp;</p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).<p>The
341respective salinity flux value is used
342as bottom (horizontally homogeneous) boundary condition for the salinity equation. This additionally requires that a Neumann
343condition 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
346of a single building in m.<br> <br> <span style="font-weight: bold;">building_height</span> must
347be less than the height of the model domain. This parameter requires
348the use of&nbsp;<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
352building in m.<br> <br>
353Currently, <span style="font-weight: bold;">building_length_x</span>
354must be at least <span style="font-style: italic;">3
355*&nbsp;</span><a style="font-style: italic;" href="#dx">dx</a> and no more than <span style="font-style: italic;">(&nbsp;</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>.
357This parameter requires the use of&nbsp;<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
361of a single building in m.<br> <br>
362Currently, <span style="font-weight: bold;">building_length_y</span>
363must be at least <span style="font-style: italic;">3
364*&nbsp;</span><a style="font-style: italic;" href="#dy">dy</a> and no more than <span style="font-style: italic;">(&nbsp;</span><a style="font-style: italic;" href="#ny">ny</a><span style="font-style: italic;"> - 1 )&nbsp;</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
365the use of&nbsp;<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
370left building wall and the left border of the model domain) in m.<br>
371<br>
372Currently, <span style="font-weight: bold;">building_wall_left</span>
373must be at least <span style="font-style: italic;">1
374*&nbsp;</span><a style="font-style: italic;" href="#dx">dx</a> and less than <span style="font-style: italic;">( <a href="#nx">nx</a>&nbsp;
375- 1 ) * <a href="#dx">dx</a> -&nbsp; <a href="#building_length_x">building_length_x</a></span>.
376This parameter requires the use of&nbsp;<a href="#topography">topography</a>
377= <span style="font-style: italic;">'single_building'</span>.<br>
378<br>
379The default value&nbsp;<span style="font-weight: bold;">building_wall_left</span>
380= <span style="font-style: italic;">( ( <a href="#nx">nx</a>&nbsp;+
3811 ) * <a href="#dx">dx</a> -&nbsp; <a href="#building_length_x">building_length_x</a> ) / 2</span>
382centers 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
386South building wall and the South border of the model domain) in m.<br>
387<br>
388Currently, <span style="font-weight: bold;">building_wall_south</span>
389must be at least <span style="font-style: italic;">1
390*&nbsp;</span><a style="font-style: italic;" href="#dy">dy</a> and less than <span style="font-style: italic;">( <a href="#ny">ny</a>&nbsp;
391- 1 ) * <a href="#dy">dy</a> -&nbsp; <a href="#building_length_y">building_length_y</a></span>.
392This parameter requires the use of&nbsp;<a href="#topography">topography</a>
393= <span style="font-style: italic;">'single_building'</span>.<br>
394<br>
395The default value&nbsp;<span style="font-weight: bold;">building_wall_south</span>
396= <span style="font-style: italic;">( ( <a href="#ny">ny</a>&nbsp;+
3971 ) * <a href="#dy">dy</a> -&nbsp; <a href="#building_length_y">building_length_y</a> ) / 2</span>
398centers 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
403usage of cloud droplets.<br> <br>
404Cloud droplets require to use the particle package (<span style="font-weight: bold;">mrun</span>-option <span style="font-family: monospace;">-p particles</span>),
405so in this case a particle corresponds to a droplet. The droplet
406features (number of droplets, initial radius, etc.) can be steered with
407the&nbsp; respective particle parameters (see e.g. <a href="#chapter_4.2.html#radius">radius</a>).
408The real number of initial droplets in a grid cell is equal to the
409initial 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>)
412times the <a href="#initial_weighting_factor">initial_weighting_factor</a>.<br>
413<br>
414In case of using cloud droplets, the default condensation scheme in
415PALM cannot be used, i.e. <a href="#cloud_physics">cloud_physics</a>
416must 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
420on the condensation scheme.&nbsp; </p>
421For <b>cloud_physics =</b> <span style="font-style: italic;">.TRUE.</span>, equations
422for the
423liquid water&nbsp;
424content and the liquid water potential temperature are solved instead
425of those for specific humidity and potential temperature. Note
426that a grid volume is assumed to be either completely saturated or
427completely
428unsaturated (0%-or-100%-scheme). A simple precipitation scheme can
429additionally be switched on with parameter <a href="#precipitation">precipitation</a>.
430Also cloud-top cooling by longwave radiation can be utilized (see <a href="#radiation">radiation</a>)<br> <b><br>
431cloud_physics =</b> <span style="font-style: italic;">.TRUE.
432</span>requires&nbsp;<a href="#humidity">humidity</a>
433=<span style="font-style: italic;"> .TRUE.</span> .<br>
434Detailed information about the condensation scheme is given in the
435description of the <a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM-1/Dokumentationen/Cloud_physics/wolken.pdf">cloud
436physics module</a> (pdf-file, only in German).<br> <br>
437This condensation scheme is not allowed if cloud droplets are simulated
438explicitly (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
441of 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>
443guarantees that the volume flow through the xz- or yz-cross-section of
444the total model domain remains constant (equal to the initial value at
445t=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
449so-called overshoots, which can occur with the
450upstream-spline scheme.&nbsp; </p> <p><font color="#000000">The cubic splines tend to overshoot in
451case of discontinuous changes of variables between neighbouring grid
452points.</font><font color="#ff0000"> </font><font color="#000000">This
453may lead to errors in calculating the advection tendency.</font>
454Choice
455of <b>cut_spline_overshoot</b> = <i>.TRUE.</i>
456(switched on by
457default)
458allows variable values not to exceed an interval defined by the
459respective adjacent grid points. This interval can be adjusted
460seperately 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>,
462etc.). This might be necessary in case that the
463default interval has a non-tolerable effect on the model
464results.&nbsp; </p> <p>Overshoots may also be removed
465using the parameters <a href="#ups_limit_e">ups_limit_e</a>,
466<a href="#ups_limit_pt">ups_limit_pt</a>,
467etc. 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
472the damping layer begins in the 1d-model
473(in m).&nbsp; </p> <p>This parameter is used to
474switch on a damping layer for the
4751d-model, which is generally needed for the damping of inertia
476oscillations. Damping is done by gradually increasing the value
477of the eddy diffusivities about 10% per vertical grid level
478(starting with the value at the height given by <b>damp_level_1d</b>,
479or possibly from the next grid pint above), i.e. K<sub>m</sub>(k+1)
480=
4811.1 * K<sub>m</sub>(k).
482The values of K<sub>m</sub> are limited to 10 m**2/s at
483maximum.&nbsp; <br>
484This parameter only comes into effect if the 1d-model is switched on
485for
486the 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
492the energy dissipation term in the TKE equation of the 1d-model.<br>
493<br>
494By 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>
496Setting <span style="font-weight: bold;">dissipation_1d</span>
497= <span style="font-style: italic;">'detering'</span>
498forces 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
503the 3d-model (in s).&nbsp; </p> <p>By default, (i.e.
504if a Runge-Kutta scheme is used, see <a href="#timestep_scheme">timestep_scheme</a>)
505the value of the time step is calculating after each time step
506(following the time step criteria) and
507used for the next step.</p> <p>If the user assigns <b>dt</b>
508a value, then the time step is
509fixed to this value throughout the whole run (whether it fulfills the
510time step
511criteria or not). However, changes are allowed for restart runs,
512because <b>dt</b> can also be used as a <a href="chapter_4.2.html#dt_laufparameter">run
513parameter</a>.&nbsp; </p> <p>In case that the
514calculated time step meets the condition<br> </p> <ul>
515<p><b>dt</b> &lt; 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
517aborted. Such situations usually arise
518in case of any numerical problem / instability which causes a
519non-realistic increase of the wind speed.&nbsp; </p> <p>A
520small time step due to a large mean horizontal windspeed
521speed may be enlarged by using a coordinate transformation (see <a href="#galilei_transformation">galilei_transformation</a>),
522in order to spare CPU time.<br> </p> <p>If the
523leapfrog timestep scheme is used (see <a href="#timestep_scheme">timestep_scheme</a>)
524a 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
526diffusion condition. Next it is examined whether dt_new exceeds or
527falls below the
528value of the previous timestep by at
529least +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,
531then <span style="font-weight: bold;">dt </span>=
5321.02 * dt_prev
533(previous timestep) is used as the new timestep, however the time
534step is only increased if the last change of the time step is dated
535back at
536least 30 iterations. If dt_new is located in the interval mentioned
537above, then dt
538does not change at all. By doing so, permanent time step changes as
539well as large
540sudden 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
546interval of vertical profile output of the 1D-model
547(in s).&nbsp; </p> <p>Data are written in ASCII
548format to file <a href="chapter_3.4.html#LIST_PROFIL_1D">LIST_PROFIL_1D</a>.
549This parameter is only in effect if the 1d-model has been switched on
550for the
551initialization 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
556runtime control output of the 1d-model
557(in s).&nbsp; </p> <p>Data are written in ASCII
558format to file <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>.
559This parameter is only in effect if the 1d-model is switched on for the
560initialization 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
565spacing along the x-direction (in m).&nbsp; </p> <p>Along
566x-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
571spacing along the y-direction (in m).&nbsp; </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
576spacing (in m).&nbsp; </p> <p>This parameter must be
577assigned by the user, because no
578default value is given.<br> </p> <p>By default, the
579model uses constant grid spacing along z-direction, but it can be
580stretched using the parameters <a href="#dz_stretch_level">dz_stretch_level</a>
581and <a href="#dz_stretch_factor">dz_stretch_factor</a>.
582In case of stretching, a maximum allowed grid spacing can be given by <a href="#dz_max">dz_max</a>.<br> </p> <p>Assuming
583a constant <span style="font-weight: bold;">dz</span>,
584the scalar levels (zu) are calculated directly by:&nbsp; </p>
585<ul> <p>zu(0) = - dz * 0.5&nbsp; <br>
586zu(1) = dz * 0.5</p> </ul> <p>The w-levels lie
587half between them:&nbsp; </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
590spacing (in m).<br><br>If the vertical grid is stretched
591(see <a href="#dz_stretch_factor">dz_stretch_factor</a>
592and <a href="#dz_stretch_level">dz_stretch_level</a>),
593<span style="font-weight: bold;">dz_max</span> can
594be 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
598vertically stretched grid (see <a href="#dz_stretch_level">dz_stretch_level</a>).&nbsp;
599</p> <p>The stretch factor should not exceed a value of
600approx. 1.10 -
6011.12, otherwise the discretization errors due to the stretched grid not
602negligible 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
607above which the grid is to be stretched
608vertically (in m).&nbsp; </p> <p>The vertical grid
609spacings <a href="#dz">dz</a>
610above this level are calculated as&nbsp; </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).
613The
614w-levels are then defined as:&nbsp; </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
618subgrid-scale TKE in m<sup>2</sup>s<sup>-2</sup>.<br>
619<br>This
620option&nbsp;adds artificial viscosity to the flow by ensuring that
621the
622subgrid-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
627simulated for the 1d-model (in s).&nbsp; </p> <p>The
628default value corresponds to a simulated time of 10 days.
629Usually, after such a period the inertia oscillations have completely
630decayed and the solution of the 1d-model can be regarded as stationary
631(see <a href="#damp_level_1d">damp_level_1d</a>).
632This parameter is only in effect if the 1d-model is switched on for the
633initialization 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
639be used.<br> </p> <p><br>
640The fast fourier transformation (FFT) is used for solving the
641perturbation pressure equation with a direct method (see <a href="chapter_4.2.html#psolver">psolver</a>)
642and for calculating power spectra (see optional software packages,
643section <a href="chapter_4.2.html#spectra_package">4.2</a>).</p>
644<p><br>
645By default, system-specific, optimized routines from external
646vendor libraries are used. However, these are available only on certain
647computers and there are more or less severe restrictions concerning the
648number of gridpoints to be used with them.<br> </p> <p>There
649are two other PALM internal methods available on every
650machine (their respective source code is part of the PALM source code):</p>
651<p>1.: The <span style="font-weight: bold;">Temperton</span>-method
652from Clive Temperton (ECWMF) which is computationally very fast and
653switched on with <b>fft_method</b> = <span style="font-style: italic;">'temperton-algorithm'</span>.
654The number of horizontal gridpoints (nx+1, ny+1) to be used with this
655method must be composed of prime factors 2, 3 and 5.<br> </p>
6562.: The <span style="font-weight: bold;">Singleton</span>-method
657which is very slow but has no restrictions concerning the number of
658gridpoints 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
664Galilei-transformation to the
665coordinate
666system of the model.<br><p>With <b>galilei_transformation</b>
667= <i>.T.,</i> a so-called
668Galilei-transformation is switched on which ensures that the coordinate
669system of the model is moved along with the geostrophical wind.
670Alternatively, the model domain can be moved along with the averaged
671horizontal wind (see <a href="#use_ug_for_galilei_tr">use_ug_for_galilei_tr</a>,
672this can and will naturally change in time). With this method,
673numerical inaccuracies of the Piascek - Williams - scheme (concerns in
674particular the momentum advection) are minimized. Beyond that, in the
675majority of cases the lower relative velocities in the moved system
676permit a larger time step (<a href="#dt">dt</a>).
677Switching the transformation on is only worthwhile if the geostrophical
678wind (ug, vg)
679and the averaged horizontal wind clearly deviate from the value 0. In
680each case, the distance the coordinate system has been moved is written
681to the file <a href="chapter_3.4.html#RUN_CONTROL">RUN_CONTROL</a>.&nbsp;
682</p> <p>Non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a>
683and <a href="#bc_ns">bc_ns</a>), the specification
684of a gestrophic
685wind that is not constant with height
686as well as e.g. stationary inhomogeneities at the bottom boundary do
687not 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
691subdomain
692sizes in parallel runs.<br> <br>
693For <b>grid_matching</b> = <span style="font-style: italic;">'strict'</span>,
694the subdomains are forced to have an identical
695size on all processors. In this case the processor numbers in the
696respective directions of the virtual processor net must fulfill certain
697divisor conditions concerning the grid point numbers in the three
698directions (see <a href="#nx">nx</a>, <a href="#ny">ny</a>
699and <a href="#nz">nz</a>).
700Advantage of this method is that all PEs bear the same computational
701load.<br> <br>
702There is no such restriction by default, because then smaller
703subdomains are allowed on those processors which
704form the right and/or north boundary of the virtual processor grid. On
705all other processors the subdomains are of same size. Whether smaller
706subdomains are actually used, depends on the number of processors and
707the grid point numbers used. Information about the respective settings
708are 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>
710When 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>)
711only <b>grid_matching</b> = <span style="font-style: italic;">'strict'</span>
712is allowed.<br> <br> <b>Note:</b><br>
713In some cases for small processor numbers there may be a very bad load
714balancing among the
715processors 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>
717begin</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
720limit of the horizontal range for which random perturbations are to be
721imposed on the horizontal velocity field (gridpoints).<br> <br>
722If non-cyclic lateral boundary conditions are used (see <a href="#bc_lr">bc_lr</a>
723or <a href="#bc_ns">bc_ns</a>),
724this parameter gives the gridpoint number (counted horizontally from
725the inflow)&nbsp; from which on perturbations are imposed on the
726horizontal velocity field. Perturbations must be switched on with
727parameter <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>
729end</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
731limit of the horizontal range for which random perturbations are
732to be imposed on the horizontal velocity field (gridpoints).<br> <br>
733If non-cyclic lateral boundary conditions are used (see <a href="#bc_lr">bc_lr</a>
734or <a href="#bc_ns">bc_ns</a>),
735this parameter gives the gridpoint number (counted horizontally from
736the inflow)&nbsp; unto which perturbations are imposed on the
737horizontal
738velocity 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
743to be carried out.&nbsp; </p> <p style="font-style: normal;">This parameter does not have a
744default value and therefore must be assigned with each model run. For
745restart runs <b>initializing_actions</b> = <span style="font-style: italic;">'read_restart_data'</span>
746must be set. For the initial run of a job chain the following values
747are allowed:&nbsp; </p> <p style="font-style: normal;"><span style="font-style: italic;">'set_constant_profiles'</span>
748</p> <ul> <p>A horizontal wind profile consisting
749of 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>
752and <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>,
754respectively) as well as a vertical temperature (humidity) profile
755consisting of
756linear 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>
759and <a href="#q_vertical_gradient">q_vertical_gradient</a>)
760are assumed as initial profiles. The subgrid-scale TKE is set to 0 but K<sub>m</sub>
761and K<sub>h</sub> are set to very small values because
762otherwise no TKE
763would 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
765the
766(stationary) solution of the 1d-model. These are the variables e, kh,
767km, u, v and with Prandtl layer switched on rif, us, usws, vsws. The
768temperature (humidity) profile consisting of linear sections is set as
769for 'set_constant_profiles' and assumed as constant in time within the
7701d-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>)
773is available.</p> </ul> <p><span style="font-style: italic;">'by_user'</span></p><p style="margin-left: 40px;">The initialization of the arrays
774of the 3d-model is under complete control of the user and has to be
775done in routine <a href="chapter_3.5.1.html#user_init_3d_model">user_init_3d_model</a>
776of 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
778velocity field of the
7793d-model corresponds to a
780Rankine-vortex with vertical axis. This setting may be used to test
781advection 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>)
782are necessary. In order not to distort the vortex, an initial
783horizontal wind profile constant
784with height is necessary (to be set by <b>initializing_actions</b>
785= <span style="font-style: italic;">'set_constant_profiles'</span>)
786and some other conditions have to be met (neutral stratification,
787diffusion must be
788switched off, see <a href="#km_constant">km_constant</a>).
789The center of the vortex is located at jc = (nx+1)/2. It
790extends from k = 0 to k = nz+1. Its radius is 8 * <a href="#dx">dx</a>
791and 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
795initial temperature field with radius 10.0 * <a href="#dx">dx</a>
796and center at jc = (nx+1)/2. This may be used for tests of scalar
797advection schemes
798(see <a href="#scalar_advec">scalar_advec</a>).
799Such tests require a horizontal wind profile constant with hight and
800diffusion
801switched off (see <span style="font-style: italic;">'initialize_vortex'</span>).
802Additionally, the buoyancy term
803must be switched of in the equation of motion&nbsp; for w (this
804requires the user to comment out the call of <span style="font-family: monospace;">buoyancy</span> in the
805source code of <span style="font-family: monospace;">prognostic_equations.f90</span>).</p>
806</ul> <p style="font-style: normal;">Values may be
807combined, e.g. <b>initializing_actions</b> = <span style="font-style: italic;">'set_constant_profiles
808initialize_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>
811must 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
816diffusivities are used (laminar
817simulations).&nbsp; </p> <p>If this parameter is
818specified, both in the 1d and in the
8193d-model constant values for the eddy diffusivities are used in
820space and time with K<sub>m</sub> = <b>km_constant</b>
821and K<sub>h</sub> = K<sub>m</sub> / <a href="chapter_4.2.html#prandtl_number">prandtl_number</a>.
822The prognostic equation for the subgrid-scale TKE is switched off.
823Constant eddy diffusivities are only allowed with the Prandtl layer (<a href="#prandtl_layer">prandtl_layer</a>)
824switched 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
827or dy)</span></td> <td style="vertical-align: top;">Maximum
828diffusivity used for filtering the velocity field in the vicinity of
829the outflow (in m<sup>2</sup>/s).<br> <br>
830When using non-cyclic lateral boundaries (see <a href="#bc_lr">bc_lr</a>
831or <a href="#bc_ns">bc_ns</a>),
832a smoothing has to be applied to the
833velocity field in the vicinity of the outflow in order to suppress any
834reflections of outgoing disturbances. Smoothing is done by increasing
835the eddy diffusivity along the horizontal direction which is
836perpendicular to the outflow boundary. Only velocity components
837parallel to the outflow boundary are filtered (e.g. v and w, if the
838outflow is along x). Damping is applied from the bottom to the top of
839the domain.<br> <br>
840The horizontal range of the smoothing is controlled by <a href="#outflow_damping_width">outflow_damping_width</a>
841which defines the number of gridpoints (counted from the outflow
842boundary) from where on the smoothing is applied. Starting from that
843point, the eddy diffusivity is linearly increased (from zero to its
844maximum value given by <span style="font-weight: bold;">km_damp_max</span>)
845until half of the damping range width, from where it remains constant
846up to the outflow boundary. If at a certain grid point the eddy
847diffusivity calculated from the flow field is larger than as described
848above, it is used instead.<br> <br>
849The default value of <span style="font-weight: bold;">km_damp_max</span>
850has 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
855for the so-called Long-filter.<br> </p> <p><br>
856This filter very efficiently
857eliminates 2-delta-waves sometimes cauesed by the upstream-spline
858scheme (see Mahrer and
859Pielke, 1978: Mon. Wea. Rev., 106, 818-830). It works in all three
860directions in space. A value of <b>long_filter_factor</b>
861= <i>0.01</i>
862sufficiently removes the small-scale waves without affecting the
863longer waves.<br> </p> <p>By default, the filter is
864switched off (= <i>0.0</i>).
865It is exclusively applied to the tendencies calculated by the
866upstream-spline scheme (see <a href="#momentum_advec">momentum_advec</a>
867and <a href="#scalar_advec">scalar_advec</a>),
868not to the prognostic variables themselves. At the bottom and top
869boundary of the model domain the filter effect for vertical
8702-delta-waves is reduced. There, the amplitude of these waves is only
871reduced by approx. 50%, otherwise by nearly 100%.&nbsp; <br>
872Filter factors with values &gt; <i>0.01</i> also
873reduce the amplitudes
874of waves with wavelengths longer than 2-delta (see the paper by Mahrer
875and
876Pielke, 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
877default, the optimization method depends on the host on which PALM is
878running. On machines with vector-type CPUs, single 3d-loops are used to
879calculate each tendency term of each prognostic equation, while on all
880other machines, all prognostic equations are solved within one big loop
881over 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
8861d-model.<br> <br>
887By default the mixing length is calculated as in the 3d-model (i.e. it
888depends on the grid spacing).<br> <br>
889By setting <span style="font-weight: bold;">mixing_length_1d</span>
890= <span style="font-style: italic;">'blackadar'</span>,
891the so-called Blackadar mixing length is used (l = kappa * z / ( 1 +
892kappa * 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
897switch on the prognostic equation for specific
898humidity q.<br> </p> <p>The initial vertical
899profile 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>
900and <a href="chapter_4.1.html#q_vertical_gradient_level">q_vertical_gradient_level</a>.&nbsp;
901Boundary conditions can be set via <a href="chapter_4.1.html#q_surface_initial_change">q_surface_initial_change</a>
902and <a href="chapter_4.1.html#surface_waterflux">surface_waterflux</a>.<br>
903</p>
904If 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
906humidity 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
911scheme to be used for the momentum equations.<br> <br>
912The user can choose between the following schemes:<br>
913&nbsp;<br> <br> <span style="font-style: italic;">'pw-scheme'</span><br>
914</p> <div style="margin-left: 40px;">The scheme of
915Piascek and
916Williams (1970, J. Comp. Phys., 6,
917392-405) with central differences in the form C3 is used.<br>
918If 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>
920the
921advection scheme is - for the Euler-timestep - automatically switched
922to 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
924upstream-spline scheme is
925used
926(see Mahrer and Pielke,
9271978: Mon. Wea. Rev., 106, 818-830). In opposite to the
928Piascek-Williams scheme, this is characterized by much better numerical
929features (less numerical diffusion, better preservation of flow
930structures, e.g. vortices), but computationally it is much more
931expensive. In
932addition, 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>),
934i.e. the
935timestep accuracy is only of first order.
936For this reason the advection of scalar variables (see <a href="#scalar_advec">scalar_advec</a>)
937should then also be carried out with the upstream-spline scheme,
938because otherwise the scalar variables would
939be subject to large numerical diffusion due to the upstream
940scheme.&nbsp; </div> <p style="margin-left: 40px;">Since
941the cubic splines used tend
942to overshoot under
943certain circumstances, this effect must be adjusted by suitable
944filtering 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>).
947This is always neccessary for runs with stable stratification,
948even if this stratification appears only in parts of the model domain.<br>
949</p> <div style="margin-left: 40px;">With stable
950stratification the
951upstream-spline scheme also
952produces gravity waves with large amplitude, which must be
953suitably 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&nbsp;
955upstream-spline scheme is not implemented for humidity and passive
956scalars (see&nbsp;<a href="#humidity">humidity</a>
957and <a href="#passive_scalar">passive_scalar</a>)
958and requires the use of a 2d-domain-decomposition. The last conditions
959severely restricts code optimization on several machines leading to
960very long execution times! The scheme is also not allowed for
961non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a>
962and <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
967the NetCDF output.<br> <br>
968By default, all NetCDF output data (see <a href="chapter_4.2.html#data_output_format">data_output_format</a>)
969have single precision&nbsp; (4 byte) accuracy. Double precision (8
970byte) can be choosen alternatively.<br>
971Accuracy for the different output data (cross sections, 3d-volume data,
972spectra, etc.) can be set independently.<br> <span style="font-style: italic;">'&lt;out&gt;_NF90_REAL4'</span>
973(single precision) or <span style="font-style: italic;">'&lt;out&gt;_NF90_REAL8'</span>
974(double precision) are the two principally allowed values for <span style="font-weight: bold;">netcdf_precision</span>,
975where the string <span style="font-style: italic;">'&lt;out&gt;'
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
982section<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
984section<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
992time 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>
999If all cross section data and the particle data shall be output in
1000double 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>
1001has 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
1004along x-direction of the virtual
1005processor
1006net.&nbsp; </p> <p>For parallel runs, the total
1007number of processors to be used
1008is given by
1009the <span style="font-weight: bold;">mrun</span>
1010option <a href="http://www.muk.uni-hannover.de/software/mrun_beschreibung.html#Opt-X">-X</a>.
1011By default, depending on the type of the parallel computer, PALM
1012generates a 1d processor
1013net (domain decomposition along x, <span style="font-weight: bold;">npey</span>
1014= <span style="font-style: italic;">1</span>) or a
10152d-net (this is
1016favored on machines with fast communication network). In case of a
10172d-net, it is tried to make it more or less square-shaped. If, for
1018example, 16 processors are assigned (-X 16), a 4 * 4 processor net is
1019generated (<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>).
1022This choice is optimal for square total domains (<a href="#nx">nx</a>
1023= <a href="#ny">ny</a>),
1024since then the number of ghost points at the lateral boundarys of
1025the subdomains is minimal. If <span style="font-weight: bold;">nx</span>
1026nd <span style="font-weight: bold;">ny</span>
1027differ extremely, the
1028processor net should be manually adjusted using adequate values for <span style="font-weight: bold;">npex</span> and <span style="font-weight: bold;">npey</span>.&nbsp; </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
1030correspond to the
1031value assigned by the <span style="font-weight: bold;">mrun</span>-option
1032<tt>-X</tt>.
1033Otherwise the model run will abort with a corresponding error
1034message.&nbsp; <br>
1035Additionally, the specification of <span style="font-weight: bold;">npex</span>
1036and <span style="font-weight: bold;">npey</span>
1037may of course
1038override the default setting for the domain decomposition (1d or 2d)
1039which 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
1043along y-direction of the virtual
1044processor
1045net.&nbsp; </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
1050of iterations with the SOR algorithm.&nbsp; </p> <p>This
1051parameter is only effective if the SOR algorithm was
1052selected as the pressure solver scheme (<a href="chapter_4.2.html#psolver">psolver</a>
1053= <span style="font-style: italic;">'sor'</span>)
1054and specifies the
1055number of initial iterations of the SOR
1056scheme (at t = 0). The number of subsequent iterations at the following
1057timesteps is determined
1058with the parameter <a href="#nsor">nsor</a>.
1059Usually <b>nsor</b> &lt; <b>nsor_ini</b>,
1060since in each case
1061subsequent calls to <a href="chapter_4.2.html#psolver">psolver</a>
1062use the solution of the previous call as initial value. Suitable
1063test runs should determine whether sufficient convergence of the
1064solution is obtained with the default value and if necessary the value
1065of <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
1070points in x-direction.&nbsp; </p> <p>A value for this
1071parameter must be assigned. Since the lower
1072array bound in PALM
1073starts with i = 0, the actual number of grid points is equal to <b>nx+1</b>.
1074In case of cyclic boundary conditions along x, the domain size is (<b>nx+1</b>)*
1075<a href="#dx">dx</a>.</p> <p>For
1076parallel 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
1079be an integral multiple
1080of the processor numbers (see <a href="#npex">npex</a>
1081and <a href="#npey">npey</a>)
1082along x- as well as along y-direction (due to data
1083transposition 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
1087points in y-direction.&nbsp; </p> <p>A value for this
1088parameter must be assigned. Since the lower
1089array bound in PALM starts with i = 0, the actual number of grid points
1090is equal to <b>ny+1</b>. In case of cyclic boundary
1091conditions along
1092y, 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
1096be an integral multiple
1097of the processor numbers (see <a href="#npex">npex</a>
1098and <a href="#npey">npey</a>)&nbsp;
1099along y- as well as along x-direction (due to data
1100transposition 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
1104points in z-direction.&nbsp; </p> <p>A value for this
1105parameter must be assigned. Since the lower
1106array bound in PALM
1107starts with k = 0 and since one additional grid point is added at the
1108top boundary (k = <b>nz+1</b>), the actual number of grid
1109points is <b>nz+2</b>.
1110However, the prognostic equations are only solved up to <b>nz</b>
1111(u,
1112v)
1113or up to <b>nz-1</b> (w, scalar quantities). The top
1114boundary for u
1115and v is at k = <b>nz+1</b> (u, v) while at k = <b>nz</b>
1116for all
1117other quantities.&nbsp; </p> <p>For parallel
1118runs,&nbsp; in case of <a href="#grid_matching">grid_matching</a>
1119= <span style="font-style: italic;">'strict'</span>,
1120<b>nz</b> must
1121be an integral multiple of
1122the number of processors in x-direction (due to data transposition
1123restrictions).</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&nbsp;ocean runs.<br><br>By default PALM is configured to simulate&nbsp;atmospheric flows. However, starting from version 3.3, <span style="font-weight: bold;">ocean</span> = <span style="font-style: italic;">.T.</span> allows&nbsp;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
1124density is calculated from the equation of state for seawater after
1125each timestep, using the algorithm proposed by Jackett et al. (2006, J.
1126Atmos. 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&nbsp;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
1127a vertical grid stretching is not recommended since it would still
1128stretch the grid towards the top boundary of the model (sea surface)
1129instead 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
1133velocity of the rotating system (in rad s<sup>-1</sup>).&nbsp;
1134</p> <p>The angular velocity of the earth is set by
1135default. The
1136values
1137of the Coriolis parameters are calculated as:&nbsp; </p> <ul>
1138<p>f = 2.0 * <b>omega</b> * sin(<a href="#phi">phi</a>)&nbsp;
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,
1143nx/2</span> or <span style="font-style: italic;">ny/2)</span></td>
1144<td style="vertical-align: top;">Width of
1145the damping range in the vicinity of the outflow (gridpoints).<br>
1146<br>
1147When using non-cyclic lateral boundaries (see <a href="chapter_4.1.html#bc_lr">bc_lr</a>
1148or <a href="chapter_4.1.html#bc_ns">bc_ns</a>),
1149a smoothing has to be applied to the
1150velocity field in the vicinity of the outflow in order to suppress any
1151reflections of outgoing disturbances. This parameter controlls the
1152horizontal range to which the smoothing is applied. The range is given
1153in gridpoints counted from the respective outflow boundary. For further
1154details about the smoothing see parameter <a href="chapter_4.1.html#km_damp_max">km_damp_max</a>,
1155which 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
1160for the overshooting of subgrid-scale TKE in
1161case that the upstream-spline scheme is switched on (in m<sup>2</sup>/s<sup>2</sup>).&nbsp;
1162</p> <p>By deafult, if cut-off of overshoots is switched
1163on for the
1164upstream-spline scheme (see <a href="#cut_spline_overshoot">cut_spline_overshoot</a>),
1165no overshoots are permitted at all. If <b>overshoot_limit_e</b>
1166is given a non-zero value, overshoots with the respective
1167amplitude (both upward and downward) are allowed.&nbsp; </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
1173for the overshooting of potential temperature in
1174case that the upstream-spline scheme is switched on (in K).&nbsp; </p>
1175<p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>.&nbsp;
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
1181overshooting of
1182the u-component of velocity in case that the upstream-spline scheme is
1183switched on (in m/s). <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>.&nbsp;
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
1189for the overshooting of the v-component of
1190velocity in case that the upstream-spline scheme is switched on
1191(in m/s).&nbsp; </p> <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>.&nbsp;
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
1197for the overshooting of the w-component of
1198velocity in case that the upstream-spline scheme is switched on
1199(in m/s).&nbsp; </p> <p>For further information see <a href="#overshoot_limit_e">overshoot_limit_e</a>.&nbsp;
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
1205switch on the prognostic equation for a passive
1206scalar. <br> </p> <p>The initial vertical profile
1207of s can be set via parameters <a href="#s_surface">s_surface</a>,
1208<a href="#s_vertical_gradient">s_vertical_gradient</a>
1209and&nbsp; <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>.
1210Boundary conditions can be set via <a href="#s_surface_initial_change">s_surface_initial_change</a>
1211and <a href="#surface_scalarflux">surface_scalarflux</a>.&nbsp;
1212</p> <p><b>Note:</b> <br>
1213With <span style="font-weight: bold;">passive_scalar</span>
1214switched
1215on, the simultaneous use of humidity (see&nbsp;<a href="#humidity">humidity</a>)
1216is 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
1220latitude (in degrees).&nbsp; </p> <p>The value of
1221this parameter determines the value of the
1222Coriolis parameters f and f*, provided that the angular velocity (see <a href="#omega">omega</a>)
1223is 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
1227switch on a Prandtl layer.&nbsp; </p> <p>By default,
1228a Prandtl layer is switched on at the bottom
1229boundary 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
1231scalar quantities).
1232In this case, at the bottom boundary, free-slip conditions for u and v
1233(see <a href="#bc_uv_b">bc_uv_b</a>)
1234are not allowed. Likewise, laminar
1235simulations with constant eddy diffusivities (<a href="#km_constant">km_constant</a>)
1236are forbidden.&nbsp; </p> <p>With Prandtl-layer
1237switched 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
1239automatically
1240changed to <i>'neumann'</i> if necessary.&nbsp; Also,
1241the pressure
1242boundary condition <a href="#bc_p_b">bc_p_b</a>
1243= <i>'neumann+inhomo'</i>&nbsp; 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
1248on the precipitation scheme.<br> </p> <p>For
1249precipitation processes PALM uses a simplified Kessler
1250scheme. This scheme only considers the
1251so-called autoconversion, that means the generation of rain water by
1252coagulation of cloud drops among themselves. Precipitation begins and
1253is immediately removed from the flow as soon as the liquid water
1254content 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
1256refrence</span></td><td style="vertical-align: top;">Reference
1257temperature to be used in all buoyancy terms (in K).<br><br>By
1258default, the instantaneous horizontal average over the total model
1259domain 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
1263potential temperature (in K).&nbsp; </p> <p>This
1264parameter 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,
1266the
1267initial vertical temperature profile is constructed with <a href="#pt_vertical_gradient">pt_vertical_gradient</a>
1268and <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level
1269</a>.
1270This 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>),
1271this parameter gives the temperature value at the sea surface, which is
1272at k=nzt. The profile is then constructed from the surface down to the
1273bottom 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
1277surface temperature to be made at the beginning of
1278the 3d run
1279(in K).&nbsp; </p> <p>If <b>pt_surface_initial_change</b>
1280is set to a non-zero
1281value, the near surface sensible heat flux is not allowed to be given
1282simultaneously (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
1287gradient(s) of the initial temperature profile (in
1288K
1289/ 100 m).&nbsp; </p> <p>This temperature gradient
1290holds starting from the height&nbsp;
1291level defined by <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>
1292(precisely: for all uv levels k where zu(k) &gt;
1293pt_vertical_gradient_level,
1294pt_init(k) is set: pt_init(k) = pt_init(k-1) + dzu(k) * <b>pt_vertical_gradient</b>)
1295up to the top boundary or up to the next height level defined
1296by <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>.
1297A total of 10 different gradients for 11 height intervals (10 intervals
1298if <a href="#pt_vertical_gradient_level">pt_vertical_gradient_level</a>(1)
1299= <i>0.0</i>) can be assigned. The surface temperature is
1300assigned via <a href="#pt_surface">pt_surface</a>.&nbsp;
1301</p> <p>Example:&nbsp; </p> <ul> <p><b>pt_vertical_gradient</b>
1302= <i>1.0</i>, <i>0.5</i>,&nbsp; <br>
1303<b>pt_vertical_gradient_level</b> = <i>500.0</i>,
1304<i>1000.0</i>,</p> </ul> <p>That
1305defines the temperature profile to be neutrally
1306stratified
1307up to z = 500.0 m with a temperature given by <a href="#pt_surface">pt_surface</a>.
1308For 500.0 m &lt; z &lt;= 1000.0 m the temperature gradient is
13091.0 K /
1310100 m and for z &gt; 1000.0 m up to the top boundary it is
13110.5 K / 100 m (it is assumed that the assigned height levels correspond
1312with 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>),
1313the profile is constructed like described above, but starting from the
1314sea surface (k=nzt) down to the bottom boundary of the model. Height
1315levels 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>&nbsp;
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>
1321is effective (in m).&nbsp; </p> <p>The height levels have to be assigned in ascending order. The
1322default values result in a neutral stratification regardless of the
1323values of <a href="#pt_vertical_gradient">pt_vertical_gradient</a>
1324(unless the top boundary of the model is higher than 100000.0 m).
1325For 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&nbsp;(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
1330specific humidity / total water content (kg/kg).&nbsp; </p> <p>This
1331parameter assigns the value of the specific humidity q at
1332the surface (k=0).&nbsp; Starting from this value, the initial
1333humidity
1334profile is constructed with&nbsp; <a href="#q_vertical_gradient">q_vertical_gradient</a>
1335and <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>.
1336This 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
1340surface specific humidity / total water content to
1341be made at the beginning
1342of the 3d run (kg/kg).&nbsp; </p> <p>If <b>q_surface_initial_change</b><i>
1343</i>is set to a
1344non-zero value the
1345near surface latent heat flux (water flux) is not allowed to be given
1346simultaneously (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
1351gradient(s) of the initial humidity profile
1352(in 1/100 m).&nbsp; </p> <p>This humidity gradient
1353holds starting from the height
1354level&nbsp; defined by <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>
1355(precisely: for all uv levels k, where zu(k) &gt;
1356q_vertical_gradient_level,
1357q_init(k) is set: q_init(k) = q_init(k-1) + dzu(k) * <b>q_vertical_gradient</b>)
1358up to the top boundary or up to the next height level defined
1359by <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>.
1360A total of 10 different gradients for 11 height intervals (10 intervals
1361if <a href="#q_vertical_gradient_level">q_vertical_gradient_level</a>(1)
1362= <i>0.0</i>) can be asigned. The surface humidity is
1363assigned
1364via <a href="#q_surface">q_surface</a>. </p>
1365<p>Example:&nbsp; </p> <ul> <p><b>q_vertical_gradient</b>
1366= <i>0.001</i>, <i>0.0005</i>,&nbsp; <br>
1367<b>q_vertical_gradient_level</b> = <i>500.0</i>,
1368<i>1000.0</i>,</p> </ul>
1369That defines the humidity to be constant with height up to z =
1370500.0
1371m with a
1372value given by <a href="#q_surface">q_surface</a>.
1373For 500.0 m &lt; z &lt;= 1000.0 m the humidity gradient is
13740.001 / 100
1375m and for z &gt; 1000.0 m up to the top boundary it is
13760.0005 / 100 m (it is assumed that the assigned height levels
1377correspond with uv
1378levels). </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>&nbsp;
1380<i>0.0</i></p> </td> <td style="vertical-align: top;"> <p>Height level from
1381which on the humidity gradient defined by <a href="#q_vertical_gradient">q_vertical_gradient</a>
1382is effective (in m).&nbsp; </p> <p>The height levels
1383are to be assigned in ascending order. The
1384default values result in a humidity constant with height regardless of
1385the 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
1387the 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
1392switch on longwave radiation cooling at
1393cloud-tops.&nbsp; </p> <p>Long-wave radiation
1394processes are parameterized by the
1395effective emissivity, which considers only the absorption and emission
1396of long-wave radiation at cloud droplets. The radiation scheme can be
1397used 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
1402generator to be used for creating uniformly
1403distributed random numbers. <br> </p> <p>It is
1404used if random perturbations are to be imposed on the
1405velocity field or on the surface heat flux field (see <a href="chapter_4.2.html#create_disturbances">create_disturbances</a>
1406and <a href="chapter_4.2.html#random_heatflux">random_heatflux</a>).
1407By default, the "Numerical Recipes" random number generator is used.
1408This one provides exactly the same order of random numbers on all
1409different machines and should be used in particular for comparison runs.<br>
1410<br>
1411Besides, a system-specific generator is available ( <b>random_generator</b>
1412= <i>'system-specific')</i> which should particularly be
1413used for runs
1414on vector parallel computers (NEC), because the default generator
1415cannot be vectorized and therefore significantly drops down the code
1416performance on these machines.<br> </p> <span style="font-weight: bold;">Note:</span><br>
1417Results from two otherwise identical model runs will not be comparable
1418one-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
1423impose random perturbations on the internal two-dimensional near
1424surface heat flux field <span style="font-style: italic;">shf</span>.
1425<br> </p>If a near surface heat flux is used as bottom
1426boundary
1427condition (see <a href="#surface_heatflux">surface_heatflux</a>),
1428it is by default assumed to be horizontally homogeneous. Random
1429perturbations can be imposed on the internal
1430two-dimensional&nbsp;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
1432by
1433multiplying the
1434values at each mesh point with a normally distributed random number
1435with a mean value and standard deviation of 1. This is repeated after
1436every timestep.<br> <br>
1437In case of a non-flat <a href="#topography">topography</a>,&nbsp;assigning
1438<b>random_heatflux</b>
1439= <i>.T.</i> imposes random perturbations on the
1440combined&nbsp;heat
1441flux field <span style="font-style: italic;">shf</span>
1442composed of <a href="#surface_heatflux">surface_heatflux</a>
1443at the bottom surface and <a href="#wall_heatflux">wall_heatflux(0)</a>
1444at 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
1448the flux-Richardson number.&nbsp; </p> <p>With the
1449Prandtl layer switched on (see <a href="#prandtl_layer">prandtl_layer</a>),
1450flux-Richardson numbers (rif) are calculated for z=z<sub>p</sub>
1451(k=1)
1452in the 3d-model (in the 1d model for all heights). Their values in
1453particular determine the
1454values of the friction velocity (1d- and 3d-model) and the values of
1455the eddy diffusivity (1d-model). With small wind velocities at the
1456Prandtl layer top or small vertical wind shears in the 1d-model, rif
1457can take up unrealistic large values. They are limited by an upper (<span style="font-weight: bold;">rif_max</span>) and lower
1458limit (see <a href="#rif_min">rif_min</a>)
1459for the flux-Richardson number. The condition <b>rif_max</b>
1460&gt; <b>rif_min</b>
1461must 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
1465the flux-Richardson number.&nbsp; </p> <p>For further
1466explanations see <a href="#rif_max">rif_max</a>.
1467The condition <b>rif_max</b> &gt; <b>rif_min </b>must
1468be 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
1472length (in m).&nbsp; </p> <p>This parameter is
1473effective only in case that a Prandtl layer
1474is switched
1475on (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).&nbsp;</p>This parameter only comes into effect for ocean runs (see parameter <a href="chapter_4.1.html#ocean">ocean</a>).<p>This
1477parameter 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,
1478the
1479initial vertical salinity profile is constructed from the surface down to the bottom of the model (k=0) by using&nbsp;<a href="chapter_4.1.html#sa_vertical_gradient">sa_vertical_gradient</a>
1480and&nbsp;<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).&nbsp; </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
1483holds starting from the height&nbsp;
1484level 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) &lt;
1486sa_vertical_gradient_level, sa_init(k) is set: sa_init(k) =
1487sa_init(k+1) - dzu(k+1) * <b>sa_vertical_gradient</b>) down to the bottom boundary or down to the next height level defined
1488by <a href="chapter_4.1.html#sa_vertical_gradient_level">sa_vertical_gradient_level</a>.
1489A total of 10 different gradients for 11 height intervals (10 intervals
1490if <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
1492assigned via <a href="chapter_4.1.html#sa_surface">sa_surface</a>.&nbsp;
1493</p> <p>Example:&nbsp; </p> <ul><p><b>sa_vertical_gradient</b>
1494= <i>1.0</i>, <i>0.5</i>,&nbsp; <br>
1495<b>sa_vertical_gradient_level</b> = <i>-500.0</i>,
1496-<i>1000.0</i>,</p></ul> <p>That
1497defines 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>.
1498For -500.0 m &lt; z &lt;= -1000.0 m the salinity gradient is
14991.0 psu /
1500100 m and for z &lt; -1000.0 m down to the bottom boundary it is
15010.5 psu / 100 m (it is assumed that the assigned height levels correspond
1502with 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>
1503is effective (in m).&nbsp; </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
1504default values result in a constant salinity profile regardless of the
1505values 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).
1507For 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
1511scheme to be used for the scalar quantities.&nbsp; </p> <p>The
1512user 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
1514Piascek and
1515Williams (1970, J. Comp. Phys., 6,
1516392-405) with central differences in the form C3 is used.<br>
1517If 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>
1519the
1520advection scheme is - for the Euler-timestep - automatically switched
1521to 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
1523scheme modified by
1524Chlond (1994, Mon.
1525Wea. Rev., 122, 111-125). This is a conservative monotonous scheme with
1526very small numerical diffusion and therefore very good conservation of
1527scalar flow features. The scheme however, is computationally very
1528expensive both because it is expensive itself and because it does (so
1529far) not allow specific code optimizations (e.g. cache optimization).
1530Choice of this
1531scheme forces the Euler timestep scheme to be used for the scalar
1532quantities. For output of horizontally averaged
1533profiles 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
1535be used, instead of the
1536standard profiles (<span style="font-style: italic;">'w*pt*'</span>
1537and <span style="font-style: italic;">'wpt'</span>)
1538because these are
1539too inaccurate with this scheme. However, for subdomain analysis (see <a href="#statistic_regions">statistic_regions</a>)
1540exactly the reverse holds: here <i>'w*pt*BC'</i> and <i>'wptBC'</i>
1541show very large errors and should not be used.<br> <br>
1542This scheme is not allowed for non-cyclic lateral boundary conditions
1543(see <a href="#bc_lr">bc_lr</a>
1544and <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
1547is used
1548(see Mahrer and Pielke,
15491978: Mon. Wea. Rev., 106, 818-830). In opposite to the Piascek
1550Williams scheme, this is characterized by much better numerical
1551features (less numerical diffusion, better preservation of flux
1552structures, e.g. vortices), but computationally it is much more
1553expensive. In
1554addition, 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>),
1556i.e. the
1557timestep accuracy is only first order. For this reason the advection of
1558momentum (see <a href="#momentum_advec">momentum_advec</a>)
1559should then also be carried out with the upstream-spline scheme,
1560because otherwise the momentum would
1561be subject to large numerical diffusion due to the upstream
1562scheme.&nbsp; </p> <p style="margin-left: 40px;">Since
1563the cubic splines used tend
1564to overshoot under
1565certain circumstances, this effect must be adjusted by suitable
1566filtering 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>).
1569This is always neccesssary for runs with stable stratification,
1570even if this stratification appears only in parts of the model
1571domain.&nbsp; </p> <p style="margin-left: 40px;">With
1572stable stratification the
1573upstream-upline scheme also produces gravity waves with large
1574amplitude, which must be
1575suitably 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&nbsp;
1577upstream-spline scheme is not implemented for humidity and passive
1578scalars (see&nbsp;<a href="#humidity">humidity</a>
1579and <a href="#passive_scalar">passive_scalar</a>)
1580and requires the use of a 2d-domain-decomposition. The last conditions
1581severely restricts code optimization on several machines leading to
1582very long execution times! This scheme is also not allowed for
1583non-cyclic lateral boundary conditions (see <a href="#bc_lr">bc_lr</a>
1584and <a href="#bc_ns">bc_ns</a>).</p><br>A
1585differing advection scheme can be choosed for the subgrid-scale TKE
1586using 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
1592additional user-defined subdomains for which
1593statistical analysis
1594and corresponding output (profiles, time series) shall be
1595made.&nbsp; </p> <p>By default, vertical profiles and
1596other statistical quantities
1597are calculated as horizontal and/or volume average of the total model
1598domain. Beyond that, these calculations can also be carried out for
1599subdomains which can be defined using the field <a href="chapter_3.5.3.html">rmask </a>within the
1600user-defined software
1601(see <a href="chapter_3.5.3.html">chapter
16023.5.3</a>). The number of these subdomains is determined with the
1603parameter <b>statistic_regions</b>. Maximum 9 additional
1604subdomains
1605are allowed. The parameter <a href="chapter_4.3.html#region">region</a>
1606can be used to assigned names (identifier) to these subdomains which
1607are then used in the headers
1608of the output files and plots.</p><p>If the default NetCDF
1609output format is selected (see parameter <a href="chapter_4.2.html#data_output_format">data_output_format</a>),
1610data for the total domain and all defined subdomains are output to the
1611same 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>).
1613In case of <span style="font-weight: bold;">statistic_regions</span>
1614&gt; <span style="font-style: italic;">0</span>,
1615data on the file for the different domains can be distinguished by a
1616suffix which is appended to the quantity names. Suffix 0 means data for
1617the total domain, suffix 1 means data for subdomain 1, etc.</p><p>In
1618case of <span style="font-weight: bold;">data_output_format</span>
1619= <span style="font-style: italic;">'profil'</span>,
1620individual local files for profiles (<a href="chapter_3.4.html#PLOT1D_DATA">PLOT1D_DATA</a>)&nbsp;are
1621created for each subdomain. The individual subdomain files differ by
1622their name (the
1623number of the respective subdomain is attached, e.g.
1624PLOT1D_DATA_1). In this case the name of the file with the data of
1625the total domain is PLOT1D_DATA_0. If no subdomains
1626are declared (<b>statistic_regions</b> = <i>0</i>),
1627the name
1628PLOT1D_DATA is used (this must be considered in the
1629respective file connection statements of the <span style="font-weight: bold;">mrun</span> configuration
1630file).</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>
1633heatflux<br> </span></td> <td style="vertical-align: top;"> <p>Kinematic sensible
1634heat flux at the bottom surface (in K m/s).&nbsp; </p> <p>If
1635a value is assigned to this parameter, the internal two-dimensional
1636surface heat flux field <span style="font-style: italic;">shf</span>
1637is initialized with the value of <span style="font-weight: bold;">surface_heatflux</span>&nbsp;as
1638bottom (horizontally homogeneous) boundary condition for the
1639temperature equation. This additionally requires that a Neumann
1640condition must be used for the potential temperature (see <a href="#bc_pt_b">bc_pt_b</a>),
1641because otherwise the resolved scale may contribute to
1642the surface flux so that a constant value cannot be guaranteed. Also,
1643changes of the
1644surface temperature (see <a href="#pt_surface_initial_change">pt_surface_initial_change</a>)
1645are not allowed. The parameter <a href="#random_heatflux">random_heatflux</a>
1646can be used to impose random perturbations on the (homogeneous) surface
1647heat
1648flux field <span style="font-style: italic;">shf</span>.&nbsp;</p>
1649<p>
1650In case of a non-flat <a href="#topography">topography</a>,&nbsp;the
1651internal two-dimensional&nbsp;surface heat
1652flux field <span style="font-style: italic;">shf</span>
1653is initialized with the value of <span style="font-weight: bold;">surface_heatflux</span>
1654at the bottom surface and <a href="#wall_heatflux">wall_heatflux(0)</a>
1655at the topography top face.&nbsp;The parameter<a href="#random_heatflux"> random_heatflux</a>
1656can be used to impose random perturbations on this combined surface
1657heat
1658flux field <span style="font-style: italic;">shf</span>.&nbsp;
1659</p> <p>If no surface heat flux is assigned, <span style="font-style: italic;">shf</span> is calculated
1660at each timestep by u<sub>*</sub> * theta<sub>*</sub>
1661(of course only with <a href="#prandtl_layer">prandtl_layer</a>
1662switched on). Here, u<sub>*</sub>
1663and theta<sub>*</sub> are calculated from the Prandtl law
1664assuming
1665logarithmic wind and temperature
1666profiles between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_pt_b">bc_pt_b</a>)
1667must be used as bottom boundary condition for the potential temperature.</p><p>See
1668also <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
1673pressure at the surface (in hPa).&nbsp; </p>
1674Starting from this surface value, the vertical pressure
1675profile is calculated once at the beginning of the run assuming a
1676neutrally stratified
1677atmosphere. This is needed for
1678converting between the liquid water potential temperature and the
1679potential 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
1685the surface (in kg/(m<sup>2</sup> s)).&nbsp; </p>
1686<p>If a non-zero value is assigned to this parameter, the
1687respective scalar flux value is used
1688as bottom (horizontally homogeneous) boundary condition for the scalar
1689concentration equation.&nbsp;This additionally requires that a
1690Neumann
1691condition must be used for the scalar concentration&nbsp;(see <a href="#bc_s_b">bc_s_b</a>),
1692because otherwise the resolved scale may contribute to
1693the surface flux so that a constant value cannot be guaranteed. Also,
1694changes of the
1695surface scalar concentration (see <a href="#s_surface_initial_change">s_surface_initial_change</a>)
1696are not allowed. <br> </p> <p>If no surface scalar
1697flux is assigned (<b>surface_scalarflux</b>
1698= <i>0.0</i>),
1699it 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>
1701is calculated from the Prandtl law assuming a logarithmic scalar
1702concentration
1703profile between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_s_b">bc_s_b</a>)
1704must 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
1709water flux near the surface (in m/s).&nbsp; </p> <p>If
1710a non-zero value is assigned to this parameter, the
1711respective water flux value is used
1712as bottom (horizontally homogeneous) boundary condition for the
1713humidity equation. This additionally requires that a Neumann
1714condition must be used for the specific humidity / total water content
1715(see <a href="#bc_q_b">bc_q_b</a>),
1716because otherwise the resolved scale may contribute to
1717the surface flux so that a constant value cannot be guaranteed. Also,
1718changes of the
1719surface humidity (see <a href="#q_surface_initial_change">q_surface_initial_change</a>)
1720are not allowed.<br> </p> <p>If no surface water
1721flux is assigned (<b>surface_waterflux</b>
1722= <i>0.0</i>),
1723it 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>
1725is calculated from the Prandtl law assuming a logarithmic temperature
1726profile between k=0 and k=1. In this case a Dirichlet condition (see <a href="#bc_q_b">bc_q_b</a>)
1727must 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
1732of the passive scalar (in kg/m<sup>3</sup>).&nbsp;<br>
1733</p>
1734This parameter assigns the value of the passive scalar s at
1735the surface (k=0)<b>.</b> Starting from this value, the
1736initial vertical scalar concentration profile is constructed with<a href="#s_vertical_gradient">
1737s_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
1742surface scalar concentration to be made at the
1743beginning of the 3d run (in kg/m<sup>3</sup>).&nbsp; </p>
1744<p>If <b>s_surface_initial_change</b><i>&nbsp;</i>is
1745set to a
1746non-zero
1747value, the near surface scalar flux is not allowed to be given
1748simultaneously (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
1753concentration gradient(s) of the initial scalar
1754concentration profile (in kg/m<sup>3 </sup>/
1755100 m).&nbsp; </p> <p>The scalar gradient holds
1756starting from the height level
1757defined by <a href="#s_vertical_gradient_level">s_vertical_gradient_level
1758</a>(precisely: for all uv levels k, where zu(k) &gt;
1759s_vertical_gradient_level, s_init(k) is set: s_init(k) = s_init(k-1) +
1760dzu(k) * <b>s_vertical_gradient</b>) up to the top
1761boundary or up to
1762the next height level defined by <a href="#s_vertical_gradient_level">s_vertical_gradient_level</a>.
1763A total of 10 different gradients for 11 height intervals (10 intervals
1764if <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
1766assigned
1767via <a href="#s_surface">s_surface</a>.<br> </p>
1768<p>Example:&nbsp; </p> <ul> <p><b>s_vertical_gradient</b>
1769= <i>0.1</i>, <i>0.05</i>,&nbsp; <br>
1770<b>s_vertical_gradient_level</b> = <i>500.0</i>,
1771<i>1000.0</i>,</p> </ul> <p>That
1772defines the scalar concentration to be constant with
1773height up to z = 500.0 m with a value given by <a href="#s_surface">s_surface</a>.
1774For 500.0 m &lt; z &lt;= 1000.0 m the scalar gradient is 0.1
1775kg/m<sup>3 </sup>/ 100 m and for z &gt; 1000.0 m up to
1776the top
1777boundary it is 0.05 kg/m<sup>3 </sup>/ 100 m (it is
1778assumed that the
1779assigned height levels
1780correspond with uv
1781levels).</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
1784which on the scalar gradient defined by <a href="#s_vertical_gradient">s_vertical_gradient</a>
1785is effective (in m).&nbsp; </p> <p>The height levels
1786are to be assigned in ascending order. The
1787default values result in a scalar concentration constant with height
1788regardless 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
1790the
1791piecewise 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
1796be used for the integration of the prognostic
1797variables.&nbsp; </p> <p>The user can choose between
1798the following schemes:<br> </p> <p><span style="font-style: italic;">'runge-kutta-3'</span><br>
1799</p> <div style="margin-left: 40px;">Third order
1800Runge-Kutta scheme.<br>
1801This 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&nbsp;<a href="../tec/numerik.heiko/zeitschrittverfahren.pdf">documentation
1804on PALM's time integration schemes&nbsp;(28p., in German)</a>
1805fur further details.<br> </div> <p><span style="font-style: italic;">'runge-kutta-2'</span><br>
1806</p> <div style="margin-left: 40px;">Second order
1807Runge-Kutta scheme.<br>
1808For 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
1811order leapfrog scheme.<br>
1812Although this scheme requires a constant timestep (because it is
1813centered in time),&nbsp; is even applied in case of changes in
1814timestep. Therefore, only small
1815changes of the timestep are allowed (see <a href="#dt">dt</a>).
1816However, an Euler timestep is always used as the first timestep of an
1817initiali run. When using the Bott-Chlond scheme for scalar advection
1818(see <a href="#scalar_advec">scalar_advec</a>),
1819the prognostic equation for potential temperature will be calculated
1820with the Euler scheme, although the leapfrog scheme is switched
1821on.&nbsp; <br>
1822The leapfrog scheme must not be used together with the upstream-spline
1823scheme 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
1828leapfrog scheme is used, but
1829after each change of a timestep an Euler timestep is carried out.
1830Although this method is theoretically correct (because the pure
1831leapfrog method does not allow timestep changes), the divergence of the
1832velocity field (after applying the pressure solver) may be
1833significantly 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
1836Euler scheme.&nbsp; <br>
1837The Euler scheme must be used when treating the advection terms with
1838the upstream-spline scheme (see <a href="#scalar_advec">scalar_advec</a>
1839= <span style="font-style: italic;">'ups-scheme'</span>
1840and <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
1843subgrid-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.&nbsp; </p> <p>The user can
1847choose 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
1850around&nbsp;a single rectangular building mounted on a flat surface.<br>
1851The 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
1854arbitrary topography.<br>
1855This 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&nbsp;</font></font><font color="#000000">arbitrary topography </font><font color="#000000"><font color="#000000">height
1856information</font></font><font color="#000000">
1857in m. These data&nbsp;<span style="font-style: italic;"></span>must
1858exactly match the horizontal grid.</font> </div> <span style="font-style: italic;"><br> </span><font color="#000000">
1859Alternatively, the user may add code to the user interface subroutine <a href="chapter_3.5.1.html#user_init_grid">user_init_grid</a>
1860to allow further topography modes.<br> <br>
1861All non-flat <span style="font-weight: bold;">topography</span>
1862modes </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>&nbsp;</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>,&nbsp;<a style="" href="#galilei_transformation">galilei_transformation</a>
1868= <span style="font-style: italic;">.F.</span>,&nbsp;<a href="#cloud_physics">cloud_physics&nbsp;</a> = <span style="font-style: italic;">.F.</span>,&nbsp; <a href="#cloud_droplets">cloud_droplets</a> = <span style="font-style: italic;">.F.</span>,&nbsp;&nbsp;<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>
1870Note 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
1871nonzero </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>
1873heatflux</span></td><td style="vertical-align: top;"><p>Kinematic
1874sensible heat flux at the top boundary (in K m/s).&nbsp; </p>
1875<p>If a value is assigned to this parameter, the internal
1876two-dimensional surface heat flux field <span style="font-family: monospace;">tswst</span> is
1877initialized with the value of <span style="font-weight: bold;">top_heatflux</span>&nbsp;as
1878top (horizontally homogeneous) boundary condition for the
1879temperature equation. This additionally requires that a Neumann
1880condition must be used for the potential temperature (see <a href="chapter_4.1.html#bc_pt_t">bc_pt_t</a>),
1881because otherwise the resolved scale may contribute to
1882the top flux so that a constant value cannot be guaranteed.<span style="font-style: italic;"></span>&nbsp;</p>
1883<p><span style="font-weight: bold;">Note:</span><br>The
1884application of a top heat flux additionally requires the setting of
1885initial 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
1887Prandtl-layer is available at the top boundary so far.</p><p>See
1888also <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>
1890salinityflux</span></td><td style="vertical-align: top;"><p>Kinematic
1891salinity flux at the top boundary, i.e. the sea surface (in psu m/s).&nbsp; </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
1893two-dimensional surface heat flux field <span style="font-family: monospace;">saswst</span> is
1894initialized with the value of <span style="font-weight: bold;">top_salinityflux</span>&nbsp;as
1895top (horizontally homogeneous) boundary condition for the salinity equation. This additionally requires that a Neumann
1896condition must be used for the salinity (see <a href="chapter_4.1.html#bc_sa_t">bc_sa_t</a>),
1897because otherwise the resolved scale may contribute to
1898the top flux so that a constant value cannot be guaranteed.<span style="font-style: italic;"></span>&nbsp;</p>
1899<p><span style="font-weight: bold;">Note:</span><br>The
1900application of a salinity flux at the model top additionally requires the setting of
1901initial 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
1903also <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
1908geostrophic
1909wind at the surface (in m/s).<br> <br>
1910This parameter assigns the value of the u-component of the geostrophic
1911wind (ug) at the surface (k=0). Starting from this value, the initial
1912vertical profile of the <br>
1913u-component of the geostrophic wind is constructed with <a href="#ug_vertical_gradient">ug_vertical_gradient</a>
1914and <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>.
1915The
1916profile constructed in that way is used for creating the initial
1917vertical velocity profile of the 3d-model. Either it is applied, as it
1918has been specified by the user (<a href="#initializing_actions">initializing_actions</a>
1919= 'set_constant_profiles') or it is used for calculating a stationary
1920boundary 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>)
1922and&nbsp; has a large
1923value, it is recommended to use a Galilei-transformation of the
1924coordinate system, if possible (see <a href="#galilei_transformation">galilei_transformation</a>),
1925in 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>),
1926this parameter gives the velocity value at the sea surface, which is
1927at k=nzt. The profile is then constructed from the surface down to the
1928bottom 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
1933profile of the&nbsp; u-component of the geostrophic wind (in
19341/100s).<br> <br>
1935The 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) &gt; <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>,
1937ug(k) is set: ug(k) = ug(k-1) + dzu(k) * <span style="font-weight: bold;">ug_vertical_gradient</span>)
1938up to the top
1939boundary or up to the next height level defined by <a href="#ug_vertical_gradient_level">ug_vertical_gradient_level</a>.
1940A
1941total of 10 different gradients for 11 height intervals (10
1942intervals&nbsp; 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>),
1944the profile is constructed like described above, but starting from the
1945sea surface (k=nzt) down to the bottom boundary of the model. Height
1946levels 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
1952gradient defined by <a href="#ug_vertical_gradient">ug_vertical_gradient</a>
1953is effective (in m).<br> <br>
1954The height levels have to be assigned in ascending order. For the
1955piecewise construction of a profile of the u-component of the
1956geostrophic 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&nbsp;(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
1960turbulent kinetic energy difference used as
1961criterion for applying the upstream scheme when upstream-spline
1962advection is switched on (in m<sup>2</sup>/s<sup>2</sup>).
1963&nbsp; </p> <p>This variable steers the appropriate
1964treatment of the
1965advection of the subgrid-scale turbulent kinetic energy in case that
1966the uptream-spline scheme is used . For further information see <a href="#ups_limit_pt">ups_limit_pt</a>.&nbsp; </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
1972difference used as criterion for applying&nbsp;
1973the upstream scheme when upstream-spline advection&nbsp; is
1974switched on
1975(in K).&nbsp; </p> <p>This criterion is used if the
1976upstream-spline scheme is
1977switched on (see <a href="#scalar_advec">scalar_advec</a>).<br>
1978If, for a given gridpoint, the absolute temperature difference with
1979respect to the upstream
1980grid point is smaller than the value given for <b>ups_limit_pt</b>,
1981the upstream scheme is used for this gridpoint (by default, the
1982upstream-spline scheme is always used). Reason: in case of a very small
1983upstream gradient, the advection should cause only a very small
1984tendency. However, in such situations the upstream-spline scheme may
1985give wrong tendencies at a
1986grid point due to spline overshooting, if simultaneously the downstream
1987gradient is very large. In such cases it may be more reasonable to use
1988the upstream scheme. The numerical diffusion caused by the upstream
1989schme remains small as long as the upstream gradients are small.<br>
1990</p> <p>The percentage of grid points for which the
1991upstream
1992scheme is actually used, can be output as a time series with respect to
1993the
1994three directions in space with run parameter (see <a href="chapter_4.2.html#dt_dots">dt_dots</a>, the
1995timeseries names in the NetCDF file are <i>'splptx'</i>, <i>'splpty'</i>,
1996<i>'splptz'</i>). The percentage
1997of gridpoints&nbsp; should stay below a certain limit, however, it
1998is
1999not possible to give
2000a general limit, since it depends on the respective flow.&nbsp; </p>
2001<p>Only positive values are permitted for <b>ups_limit_pt</b>.<br>
2002</p>
2003A more effective control of
2004the &ldquo;overshoots&rdquo; 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
2009difference (u-component) used as criterion for
2010applying the upstream scheme
2011when upstream-spline advection is switched on (in m/s).&nbsp; </p>
2012<p>This variable steers the appropriate treatment of the
2013advection of the u-velocity-component in case that the upstream-spline
2014scheme is used. For further
2015information see <a href="#ups_limit_pt">ups_limit_pt</a>.&nbsp;
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
2021difference (v-component) used as criterion for
2022applying the upstream scheme
2023when upstream-spline advection is switched on (in m/s).&nbsp; </p>
2024<p>This variable steers the appropriate treatment of the
2025advection of the v-velocity-component in case that the upstream-spline
2026scheme is used. For further
2027information see <a href="#ups_limit_pt">ups_limit_pt</a>.&nbsp;
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
2033difference (w-component) used as criterion for
2034applying the upstream scheme
2035when upstream-spline advection is switched on (in m/s).&nbsp; </p>
2036<p>This variable steers the appropriate treatment of the
2037advection of the w-velocity-component in case that the upstream-spline
2038scheme is used. For further
2039information see <a href="#ups_limit_pt">ups_limit_pt</a>.&nbsp;
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
2045steer the treatment of the subgrid-scale vertical
2046fluxes within the diffusion terms at k=1 (bottom boundary).<br> </p>
2047<p>By default, the near-surface subgrid-scale fluxes are
2048parameterized (like in the remaining model domain) using the gradient
2049approach. If <b>use_surface_fluxes</b>
2050= <i>.TRUE.</i>, the user-assigned surface fluxes are used
2051instead
2052(see <a href="#surface_heatflux">surface_heatflux</a>,
2053<a href="#surface_waterflux">surface_waterflux</a>
2054and <a href="#surface_scalarflux">surface_scalarflux</a>)
2055<span style="font-weight: bold;">or</span> the
2056surface fluxes are
2057calculated via the Prandtl layer relation (depends on the bottom
2058boundary conditions, see <a href="#bc_pt_b">bc_pt_b</a>,
2059<a href="#bc_q_b">bc_q_b</a>
2060and <a href="#bc_s_b">bc_s_b</a>).<br> </p>
2061<p><b>use_surface_fluxes</b>
2062is automatically set <i>.TRUE.</i>, if a Prandtl layer is
2063used (see <a href="#prandtl_layer">prandtl_layer</a>).&nbsp;
2064</p> <p>The user may prescribe the surface fluxes at the
2065bottom
2066boundary 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
2068case, the
2069momentum flux (u<sub>*</sub><sup>2</sup>)
2070should also be prescribed,
2071the 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
2073the treatment of the subgrid-scale vertical
2074fluxes within the diffusion terms at k=nz (top boundary).</p><p>By
2075default, the fluxes at nz are calculated using the gradient approach.
2076If <b>use_top_fluxes</b>
2077= <i>.TRUE.</i>, the user-assigned top fluxes are used
2078instead
2079(see <a href="chapter_4.1.html#top_heatflux">top_heatflux</a>).</p><p>Currently,
2080only 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
2081heat 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
2086determine the translation velocity in case that a
2087Galilean transformation is used.<br> </p> <p>In
2088case of a Galilean transformation (see <a href="#galilei_transformation">galilei_transformation</a>),
2089<b>use_ug_for_galilei_tr</b>
2090= <i>.T.</i>&nbsp; ensures
2091that 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>.,
2094the
2095geostrophic wind can be replaced as translation speed by the (volume)
2096averaged velocity. However, in this case the user must be aware of fast
2097growing gravity waves, so this
2098choice 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
2099advection/timestep scheme to be used for the subgrid-scale TKE.<br><br>By
2100default, the advection scheme and the timestep scheme to be used for
2101the subgrid-scale TKE are set by the initialization parameters <a href="#scalar_advec">scalar_advec</a> and <a href="#timestep_scheme">timestep_scheme</a>,
2102respectively. <span style="font-weight: bold;">use_upstream_for_tke</span>
2103= <span style="font-style: italic;">.T.</span>
2104forces the Euler-scheme and the upstream-scheme to be used as timestep
2105scheme and advection scheme, respectively. By these methods, the strong
2106(artificial) near-surface vertical gradients of the subgrid-scale TKE
2107are significantly reduced. This is required when subgrid-scale
2108velocities are used for advection of particles (see particle package
2109parameter <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
2114geostrophic
2115wind at the surface (in m/s).<br> <br>
2116This parameter assigns the value of the v-component of the geostrophic
2117wind (vg) at the surface (k=0). Starting from this value, the initial
2118vertical profile of the <br>
2119v-component of the geostrophic wind is constructed with <a href="#vg_vertical_gradient">vg_vertical_gradient</a>
2120and <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>.
2121The
2122profile
2123constructed in that way is used for creating the initial vertical
2124velocity profile of the 3d-model. Either it is applied, as it has been
2125specified by the user (<a href="#initializing_actions">initializing_actions</a>
2126= 'set_constant_profiles')
2127or 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
2131with height (i.e. vg(k)=<span style="font-weight: bold;">vg_surface</span>)
2132and&nbsp; has a large value, it is
2133recommended to use a Galilei-transformation of the coordinate system,
2134if possible (see <a href="#galilei_transformation">galilei_transformation</a>),
2135in order to obtain larger
2136time 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>),
2137this parameter gives the velocity value at the sea surface, which is
2138at k=nzt. The profile is then constructed from the surface down to the
2139bottom 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
2143profile of the&nbsp; v-component of the geostrophic wind (in
21441/100s).<br> <br>
2145The 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&gt; <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>,
2148vg(k) is set: vg(k) = vg(k-1) + dzu(k)
2149* <span style="font-weight: bold;">vg_vertical_gradient</span>)
2150up to
2151the top boundary or up to the next height
2152level defined by <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>.
2153A total of 10 different
2154gradients for 11 height intervals (10 intervals&nbsp; if <a href="#vg_vertical_gradient_level">vg_vertical_gradient_level</a>(1)
2155=
21560.0) can be assigned. The surface
2157geostrophic 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>),
2158the profile is constructed like described above, but starting from the
2159sea surface (k=nzt) down to the bottom boundary of the model. Height
2160levels 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
2166gradient defined by <a href="#vg_vertical_gradient">vg_vertical_gradient</a>
2167is effective (in m).<br> <br>
2168The height levels have to be assigned in ascending order. For the
2169piecewise construction of a profile of the v-component of the
2170geostrophic 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&nbsp;(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
2176restrict the mixing length in the vicinity of the
2177bottom
2178boundary.&nbsp; </p> <p>With <b>wall_adjustment</b>
2179= <i>.TRUE., </i>the mixing
2180length is limited to a maximum of&nbsp; 1.8 * z. This condition
2181typically affects only the
2182first 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
2185kinematic sensible heat flux in W m<sup>-2</sup>
2186at the five topography faces:<br> <br> <div style="margin-left: 40px;"><span style="font-weight: bold;">wall_heatflux(0)&nbsp;&nbsp;
2187&nbsp;</span>top face<br> <span style="font-weight: bold;">wall_heatflux(1)&nbsp;&nbsp;&nbsp;
2188</span>left face<br> <span style="font-weight: bold;">wall_heatflux(2)&nbsp;&nbsp;&nbsp;
2189</span>right face<br> <span style="font-weight: bold;">wall_heatflux(3)&nbsp;&nbsp;&nbsp;
2190</span>south face<br> <span style="font-weight: bold;">wall_heatflux(4)&nbsp;&nbsp;&nbsp;
2191</span>north face</div> <br>
2192This parameter applies only in case of a non-flat <a href="#topography">topography</a>.&nbsp;The
2193parameter <a href="#random_heatflux">random_heatflux</a>
2194can be used to impose random perturbations on the internal
2195two-dimensional surface heat
2196flux field <span style="font-style: italic;">shf</span>
2197that is composed of <a href="#surface_heatflux">surface_heatflux</a>
2198at the bottom surface and <span style="font-weight: bold;">wall_heatflux(0)</span>
2199at the topography top face.&nbsp;</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
2203change:&nbsp;</i> $Id: chapter_4.1.html 97 2007-06-21 08:23:15Z raasch $ </p>
2204<br><br>
2205</body></html>
Note: See TracBrowser for help on using the repository browser.