Changes between Version 179 and Version 180 of doc/app/initialization_parameters


Ignore:
Timestamp:
Sep 13, 2012 2:38:28 PM (13 years ago)
Author:
raasch
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • doc/app/initialization_parameters

    v179 v180  
    276276    * If switched on, random perturbations are by default imposed to the upper model domain from zu(nzt*2/3) to zu(nzt-3).\\\\
    277277Relevant parameters to be exclusively used for steering ocean runs are [#bc_sa_t bc_sa_t], [#bottom_salinityflux bottom_salinityflux], [#sa_surface sa_surface], [#sa_vertical_gradient sa_vertical_gradient], [#sa_vertical_gradient_level sa_vertical_gradient_level], and [#top_salinityflux top_salinityflux].\\\\
    278 Section [[4.4.2]] gives an example for appropriate settings of these and other parameters neccessary for ocean runs.\\\\
    279 '''ocean''' = ''.T.'' does not allow settings of [#timestep_scheme timestep_scheme] = '' 'leapfrog' '' or '' 'leapfrog+euler' '' as well as [#scalar_advec scalar_advec] = '' 'ups-scheme'.''
     278Section [[4.4.2]] gives an example for appropriate settings of these and other parameters neccessary for ocean runs.
    280279}}}
    281280|----------------
     
    630629In the model, the maximum allowed time step according to CFL and diffusion-criterion [../d3par#dt_max dt_max] is reduced by [#dt dt] = dt_max * '''cfl_factor''' in order to avoid stability problems which may arise in the vicinity of the maximum allowed timestep. The condition ''0.0'' < '''cfl_factor''' < ''1.0'' applies.\\\\
    631630The default value of '''cfl_factor''' depends on the [#timestep_scheme timestep_scheme] used:\\\\
    632 For the third order Runge-Kutta scheme it is '''cfl_factor''' = ''0.9.''\\\\
    633 In case of the leapfrog scheme a quite restrictive value of '''cfl_factor''' = ''0.1'' is used because for larger values the velocity divergence significantly effects the accuracy of the model results. Possibly larger values may be used with the leapfrog scheme but these are to be determined by appropriate test runs.\\\\
    634 The default value for the Euler scheme is '''cfl_factor''' = ''0.8.''
     631For the third order Runge-Kutta scheme it is '''cfl_factor''' = ''0.9.'', for the second-order Runge-Kutta scheme a value of ''0.8'' is applied.\\\\
     632The default value for the Euler scheme is '''cfl_factor''' = ''0.9.''
    635633}}}
    636634|----------------
     
    682680|----------------
    683681{{{#!td style="vertical-align:top"
    684 [=#long_filter_factor '''long_filter_factor''']
    685 }}}
    686 {{{#!td style="vertical-align:top"
    687 R
    688 }}}
    689 {{{#!td style="vertical-align:top"
    690 0.0
    691 }}}
    692 {{{#!td
    693 Filter factor for the so-called Long-filter.\\\\
    694 This filter very efficiently eliminates 2-delta-waves sometimes caused by the upstream-spline scheme (see Mahrer and Pielke, 1978: Mon. Wea. Rev., 106, 818-830). It works in all three directions in space. A value of '''long_filter_factor''' = ''0.01'' sufficiently removes the small-scale waves without affecting the longer waves.\\\\
    695 By default, the filter is switched off (= ''0.0''). It is exclusively applied to the tendencies calculated by the upstream-spline scheme (see [#momentum_advec momentum_advec] and [#scalar_advec scalar_advec]), not to the prognostic variables themselves. At the bottom and top boundary of the model domain the filter effect for vertical 2-delta-waves is reduced. There, the amplitude of these waves is only reduced by approx. 50%, otherwise by nearly 100%.\\\\
    696 Filter factors with values > ''0.01'' also reduce the amplitudes of waves with wavelengths longer than 2-delta (see the paper by Mahrer and Pielke, quoted above).
    697 }}}
    698 |----------------
    699 {{{#!td style="vertical-align:top"
    700682[=#loop_optimization '''loop_optimization''']
    701683}}}
     
    779761'' 'pw-scheme' ''\\\\
    780762      The scheme of Piacsek and Williams (1970, J. Comp. Phys., 6, 392-405) with central differences in the form C3 is used.
    781       If intermediate Euler-timesteps are carried out in case of [#timestep_scheme timestep_scheme] = '' 'leapfrog+euler' '' the advection scheme is - for the Euler-timestep - automatically switched to an upstream-scheme.\\\\
    782 '' 'ups-scheme' ''\\\\
    783       The upstream-spline scheme is used (see Mahrer and Pielke, 1978: Mon. Wea. Rev., 106, 818-830). In opposite to the Piacsek-Williams scheme, this is characterized by much better numerical features (less numerical diffusion, better preservation of flow structures, e.g. vortices), but computationally it is much more expensive. In addition, the use of the Euler-timestep scheme is mandatory ([#timestep_scheme timestep_scheme] = '' 'euler' ''), i.e. the timestep accuracy is only of first order. For this reason the advection of scalar variables (see [#scalar_advec scalar_advec]) should then also be carried out with the upstream-spline scheme, because otherwise the scalar variables would be subject to large numerical diffusion due to the upstream scheme.\\\\
    784 Since the cubic splines used tend to overshoot under certain circumstances, this effect must be adjusted by suitable filtering and smoothing (see [#long_filter_factor long_filter_factor]). This is always neccessary for runs with stable stratification, even if this stratification appears only in parts of the model domain.\\\\
    785 With stable stratification the upstream-spline scheme also produces gravity waves with large amplitude, which must be suitably damped (see [../inipar#rayleigh_damping_factor rayleigh_damping_factor]).\\\\
    786 '''Important:'''\\
    787 The  upstream-spline scheme is not implemented for humidity and passive scalars (see [#humidity humidity] and [#passive_scalar passive_scalar]) and requires the use of a 2d-domain-decomposition. The last conditions severely restricts code optimization on several machines leading to very long execution times! The scheme is also not allowed for non-cyclic lateral boundary conditions (see [#bc_lr bc_lr] and [#bc_ns bc_ns]).
    788763}}}
    789764|----------------
     
    954929Factor for Rayleigh damping.\\\\
    955930A so-called Rayleigh damping is applied to all prognostic variables if a non-zero value is assigned to '''rayleigh_damping_factor'''. If switched on, horizontal velocities, temperature, humidity/scalar (if switched on) and salinity (in case of ocean) are forced towards the value of their respective basic states (defined by the initial profiles of the geostrophic wind, temperature, etc.). In case of large scale subsidence (see [#subs_vertical_gradient subs_vertical_gradient]) the basic state of temperature and humidity is adjusted with respect to the subsidence. Scalar quantities can be excluded from the damping (see [#scalar_rayleigh_damping scalar_rayleigh_damping]). The intensity of damping is controlled by the value the '''rayleigh_damping_factor''' is assigned to. The damping starts weakly at a height defined by [#rayleigh_damping_height rayleigh_damping_height] and rises according to a sin^2^-function to its maximum value at the top (ocean: bottom) boundary.\\\\
    956 This method effectively damps gravity waves, caused by boundary layer convection, which may spread out vertically in the inversion layer and which are reflected at the top (ocean: bottom) boundary. This particularly happens with the upstream-spline scheme switched on (see [#momentum_advec momentum_advec] or [#scalar_advec scalar_advec]). Therefore, with this scheme the Rayleigh damping is switched on ('''rayleigh_damping_factor''' = ''0.01'') by default. Otherwise it remains switched off.\\\\
     931This method effectively damps gravity waves, caused by boundary layer convection, which may spread out vertically in the inversion layer and which are reflected at the top (ocean: bottom) boundary.\\\\
    957932The Rayleigh damping factor must hold the condition ''0.0'' <= '''rayleigh_damping_factor''' <= ''1.0.'' Large values (close to 1.0) can cause numerical instabilities.
    958933}}}
     
    1008983'''Important''': The number of ghost layers for 2d and 3d arrays changed. This affects also the user interface. Please adapt the allocation of 2d and 3d arrays in your user interface like [../userint/output#Allocate here]. Furthermore the exchange of ghost layers for 3d variables changed, so calls of exchange_horiz in the user interface have to be modified. Here an example for the potential temperature: CALL exchange_horiz( pt , nbgp ). \\\\
    1009984'' 'pw-scheme' ''\\\\
    1010       The scheme of Piacsek and Williams (1970, J. Comp. Phys., 6, 392-405) with central differences in the form C3 is used.
    1011       If intermediate Euler-timesteps are carried out in case of [#timestep_scheme timestep_scheme] = '' 'leapfrog+euler' '' the advection scheme is - for the Euler-timestep - automatically switched to an upstream-scheme.\\\\
     985      The scheme of Piacsek and Williams (1970, J. Comp. Phys., 6, 392-405) with central differences in the form C3 is used.\\\\
    1012986'' 'bc-scheme' ''\\\\
    1013987      The Bott scheme modified by Chlond (1994, Mon. Wea. Rev., 122, 111-125). This is a conservative monotonous scheme with very small numerical diffusion and therefore very good conservation of scalar flow features. The scheme however, is computationally very expensive both because it is expensive itself and because it does (so far) not allow specific code optimizations (e.g. cache optimization). Choice of this scheme forces the Euler timestep scheme to be used for the scalar quantities. For output of horizontally averaged profiles of the resolved / total heat flux, [../d3par#data_output_pr data_output_pr] = '' 'w*pt*BC' '' / '' 'wptBC' '' should be used, instead of the standard profiles ('' 'w*pt*' '' and '' 'wpt' '') because these are too inaccurate with this scheme. However, for subdomain analysis (see [#statistic_regions statistic_regions]) exactly the reverse holds: here '' 'w*pt*BC' '' and '' 'wptBC' '' show very large errors and should not be used.\\\\
    1014988      This scheme is not allowed for non-cyclic lateral boundary conditions (see [#bc_lr bc_lr] and [#bc_ns bc_ns]).\\\\
    1015 '' 'ups-scheme' ''\\\\
    1016       The upstream-spline-scheme is used (see Mahrer and Pielke, 1978: Mon. Wea. Rev., 106, 818-830). In opposite to the Piacsek Williams scheme, this is characterized by much better numerical features (less numerical diffusion, better preservation of flux structures, e.g. vortices), but computationally it is much more expensive. In addition, the use of the Euler-timestep scheme is mandatory ([#timestep_scheme timestep_scheme] = '' 'euler' ''), i.e. the timestep accuracy is only first order. For this reason the advection of momentum (see [#momentum_advec momentum_advec]) should then also be carried out with the upstream-spline scheme, because otherwise the momentum would be subject to large numerical diffusion due to the upstream scheme.\\\\
    1017 Since the cubic splines used tend to overshoot under certain circumstances, this effect must be adjusted by suitable filtering and smoothing (see [#long_filter_factor long_filter_factor]). This is always neccesssary for runs with stable stratification, even if this stratification appears only in parts of the model domain.\\\\
    1018 With stable stratification the upstream-upline scheme also produces gravity waves with large amplitude, which must be suitably damped (see [#rayleigh_damping_factor rayleigh_damping_factor]).\\\\
    1019 '''Important:'''\\
    1020 The  upstream-spline scheme is not implemented for humidity and passive scalars (see [#humidity humidity] and [#passive_scalar passive_scalar]) and requires the use of a 2d-domain-decomposition. The last conditions severely restricts code optimization on several machines leading to very long execution times! This scheme is also not allowed for non-cyclic lateral boundary conditions (see [#bc_lr bc_lr] and [#bc_ns bc_ns]).\\\\
    1021989A differing advection scheme can be chosen for the subgrid-scale TKE using parameter [#use_upstream_for_tke use_upstream_for_tke].
    1022990}}}
     
    10561024      Second order Runge-Kutta scheme.\\
    10571025      For special features see '''timestep_scheme''' = '' 'runge-kutta-3'.''\\\\
    1058 '' 'leapfrog' ''\\\\
    1059       Second order leapfrog scheme.\\
    1060       Although this scheme requires a constant timestep (because it is centered in time), it is even applied in case of changes in timestep. Therefore, only small changes of the timestep are allowed (see [#dt dt]). However, an Euler timestep is always used as the first timestep of an initial run. When using the Bott-Chlond scheme for scalar advection (see [#scalar_advec scalar_advec]), the prognostic equation for potential temperature will be calculated with the Euler scheme, although the leapfrog scheme is switched on.\\
    1061       The leapfrog scheme must not be used together with the upstream-spline scheme for calculating the advection (see [#scalar_advec scalar_advec] = '' 'ups-scheme' '' and [#momentum_advec momentum_advec] = '' 'ups-scheme' '').\\\\
    1062 '' 'leapfrog+euler' ''\\\\
    1063       The leapfrog scheme is used, but after each change of a timestep an Euler timestep is carried out. Although this method is theoretically correct (because the pure leapfrog method does not allow timestep changes), the divergence of the velocity field (after applying the pressure solver) may be significantly larger than with '' 'leapfrog'.''\\\\
    10641026'' 'euler' ''\\\\
    1065       First order Euler scheme.\\
    1066       The Euler scheme must be used when treating the advection terms with the upstream-spline scheme (see [#scalar_advec scalar_advec] = '' 'ups-scheme' '' and [#momentum_advec momentum_advec] = '' 'ups-scheme' '').\\\\
     1027      First order Euler scheme.\\\\
    10671028A differing timestep scheme can be chosen for the subgrid-scale TKE using parameter [#use_upstream_for_tke use_upstream_for_tke].
    10681029}}}
     
    18321793      '''dt''' < 0.00001 * [../d3par#dt_max dt_max] (with dt_max = 20.0)\\\\
    18331794the simulation will be aborted. Such situations usually arise in case of any numerical problem / instability which causes a non-realistic increase of the wind speed.\\\\
    1834 A small time step due to a large mean horizontal windspeed speed may be enlarged by using a coordinate transformation (see [#galilei_transformation galilei_transformation]), in order to spare CPU time.\\\\
    1835 If the leapfrog timestep scheme is used (see [#timestep_scheme timestep_scheme]) a temporary time step value dt_new is calculated first, with dt_new = [#cfl_factor cfl_factor] * dt_crit where dt_crit is the maximum timestep allowed by the CFL and diffusion condition. Next it is examined whether dt_new exceeds or falls below the value of the previous timestep by at least +5 % / -2%. If it is smaller, '''dt''' = dt_new is immediately used for the next timestep. If it is larger, then '''dt''' = 1.02 * dt_prev (previous timestep) is used as the new timestep, however the time step is only increased if the last change of the time step is dated back at least 30 iterations. If dt_new is located in the interval mentioned above, then '''dt''' does not change at all. By doing so, permanent time step changes as well as large sudden changes (increases) in the time step are avoided.
     1795A small time step due to a large mean horizontal windspeed speed may be enlarged by using a coordinate transformation (see [#galilei_transformation galilei_transformation]), in order to spare CPU time.
    18361796}}}
    18371797|----------------