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