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