Changes between Version 80 and Version 81 of doc/app/maskedoutput


Ignore:
Timestamp:
Feb 24, 2021 3:39:53 PM (4 years ago)
Author:
wagner
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • doc/app/maskedoutput

    v80 v81  
    55From release 3.7a (r483) output of masked data is implemented in PALM. This feature allows to output quantities at different mask locations, e.g. 3d volume data or 2d cross sections of arbitrary extension within the model domain; 0d or 1d data at any positions and of any amount.\\
    66NetCDF4 file format is already available for masked data output.\\
    7 Default quantities (instantaneous and time averaged) are declared with the parameter [../d3par#data_output_masks data_output_masks], user-defined quantities can be output with [../userpar#data_output_masks_user data_output_masks_user] (see also [[../userint/output|User-defined output quantities]]).\\\\
     7Default quantities (instantaneous and time averaged) are declared with the parameter [../runtime_parameters#data_output_masks data_output_masks], user-defined quantities can be output with [../userpar#data_output_masks_user data_output_masks_user] (see also [[../userint/output|User-defined output quantities]]).\\\\
    88Since r3436, terrain-following masked output is implemented. This allows to output masked quantities at a specified height above the surface.
    99
    1010
    1111== Output steering ==
    12 Different [../d3par runtime parameters] steer the output of the quantities assigned with [../d3par#data_output_masks data_output_masks] and/or [../userpar#data_output_masks_user data_output_masks_user]:[=#list]
    13 \\\\
    14 ||[../d3par#mask_x mask_x] ||all x-coordinates of mask locations (in multiples of mask scale) ||
    15 ||[../d3par#mask_y mask_y] ||all y-coordinates of mask locations (in multiples of mask scale) ||
    16 ||[../d3par#mask_z mask_z] ||all z-coordinates of mask locations (in multiples of mask scale) ||
    17 ||[../d3par#mask_x_loop mask_x_loop] ||loop begin, end and stride for x-coordinates of mask locations for masks (in multiples of mask scale) ||
    18 ||[../d3par#mask_y_loop mask_y_loop] ||loop begin, end and stride for y-coordinates of mask locations for masks (in multiples of mask scale) ||
    19 ||[../d3par#mask_z_loop mask_z_loop] ||loop begin, end and stride for z-coordinates of mask locations for masks (in multiples of mask scale) ||
    20 ||[../d3par#mask_k_over_surface mask_k_over_surface] ||vertical grid index above a surface to use for terrain-following masked output ||
     12Different [../d3par runtime parameters] steer the output of the quantities assigned with [../runtime_parameters#data_output_masks data_output_masks] and/or [../userpar#data_output_masks_user data_output_masks_user]:[=#list]
     13\\\\
     14||[../runtime_parameters#mask_x mask_x] ||all x-coordinates of mask locations (in multiples of mask scale) ||
     15||[../runtime_parameters#mask_y mask_y] ||all y-coordinates of mask locations (in multiples of mask scale) ||
     16||[../runtime_parameters#mask_z mask_z] ||all z-coordinates of mask locations (in multiples of mask scale) ||
     17||[../runtime_parameters#mask_x_loop mask_x_loop] ||loop begin, end and stride for x-coordinates of mask locations for masks (in multiples of mask scale) ||
     18||[../runtime_parameters#mask_y_loop mask_y_loop] ||loop begin, end and stride for y-coordinates of mask locations for masks (in multiples of mask scale) ||
     19||[../runtime_parameters#mask_z_loop mask_z_loop] ||loop begin, end and stride for z-coordinates of mask locations for masks (in multiples of mask scale) ||
     20||[../runtime_parameters#mask_k_over_surface mask_k_over_surface] ||vertical grid index above a surface to use for terrain-following masked output ||
    2121These parameters define the masks. Each mask can be steered with a separate set of x-, y- and z-parameters. By default all gridpoints along the respective direction are used.
    2222\\\\
    23 ||[../d3par#mask_scale_x mask_scale_x] ||scaling length for masked data output in x-direction ||
    24 ||[../d3par#mask_scale_y mask_scale_y] ||scaling length for masked data output in y-direction ||
    25 ||[../d3par#mask_scale_z mask_scale_z] ||scaling length for masked data output in z-direction ||
     23||[../runtime_parameters#mask_scale_x mask_scale_x] ||scaling length for masked data output in x-direction ||
     24||[../runtime_parameters#mask_scale_y mask_scale_y] ||scaling length for masked data output in y-direction ||
     25||[../runtime_parameters#mask_scale_z mask_scale_z] ||scaling length for masked data output in z-direction ||
    2626The scaling lengths can be used to scale the parameters which defines the masks ('''mask_x''', '''mask_y''', '''mask_z''', '''mask_x_loop''', '''mask_y_loop''' or '''mask_z_loop'''). The scaling lengths apply for all masks.
    2727\\\\
    28 ||[../d3par#dt_domask dt_domask] ||temporal interval at which instantaneous masked data shall be output (in s) ||
    29 ||[../d3par#skip_time_domask skip_time_domask] ||no output of masked data before this interval has passed (in s) ||
    30 The time intervals of the output times for each mask are determined with '''dt_domask'''. Individual time interval for output of temporally averaged data can be assigned using the parameter [../d3par#dt_data_output_av dt_data_output_av]. The length of the averaging interval is controlled with [../d3par#averaging_interval averaging_interval]. So far no particular parameters are existent for steering the time averaged output of each separate mask.
     28||[../runtime_parameters#dt_domask dt_domask] ||temporal interval at which instantaneous masked data shall be output (in s) ||
     29||[../runtime_parameters#skip_time_domask skip_time_domask] ||no output of masked data before this interval has passed (in s) ||
     30The time intervals of the output times for each mask are determined with '''dt_domask'''. Individual time interval for output of temporally averaged data can be assigned using the parameter [../runtime_parameters#dt_data_output_av dt_data_output_av]. The length of the averaging interval is controlled with [../runtime_parameters#averaging_interval averaging_interval]. So far no particular parameters are existent for steering the time averaged output of each separate mask.
    3131\\\\\\
    3232An umlimited amount of different masks can be defined. Each mask is output to one local file:
     
    6969    mask_y_loop(1,:) = 800., 1000., 50. ,/
    7070}}}
    71 If [../d3par#mask_x mask_x], [../d3par#mask_y mask_y], [../d3par#mask_z mask_z] or [../d3par#mask_x_loop mask_x_loop], [../d3par#mask_y_loop mask_y_loop], [../d3par#mask_z_loop mask_z_loop] are not assigned, all gridpoints are used along the corresponding direction.\\
    72 Output is done at t = [../d3par#dt_data_output dt_data_output] since [../d3par#dt_domask dt_domask] is not assigned.
     71If [../runtime_parameters#mask_x mask_x], [../runtime_parameters#mask_y mask_y], [../runtime_parameters#mask_z mask_z] or [../runtime_parameters#mask_x_loop mask_x_loop], [../runtime_parameters#mask_y_loop mask_y_loop], [../runtime_parameters#mask_z_loop mask_z_loop] are not assigned, all gridpoints are used along the corresponding direction.\\
     72Output is done at t = [../runtime_parameters#dt_data_output dt_data_output] since [../runtime_parameters#dt_domask dt_domask] is not assigned.
    7373\\\\
    7474=== 2. Output of two different masks ===
     
    9999    skip_time_domask = 3600.,3600.,/
    100100}}}
    101 Output starts after 1h simulation time (see [../d3par#skip_time_domask skip_time_domask]) for both masks and is done every 10 minutes for '''mask 1''' and every 30 minutes for '''mask 2''' (see [../d3par#dt_domask dt_domask]).
     101Output starts after 1h simulation time (see [../runtime_parameters#skip_time_domask skip_time_domask]) for both masks and is done every 10 minutes for '''mask 1''' and every 30 minutes for '''mask 2''' (see [../runtime_parameters#dt_domask dt_domask]).
    102102\\\\
    103103=== [=#E3]3. Output of three different masks ===
     
    131131    skip_time_domask = 0.,3600.,3600.,/
    132132}}}
    133 Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../d3par#skip_time_domask skip_time_domask]) for '''mask 2''' and '''3'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../d3par#dt_data_output dt_data_output] for '''mask 2''' and '''3''' (see [../d3par#dt_domask dt_domask]).
     133Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../runtime_parameters#skip_time_domask skip_time_domask]) for '''mask 2''' and '''3'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../runtime_parameters#dt_data_output dt_data_output] for '''mask 2''' and '''3''' (see [../runtime_parameters#dt_domask dt_domask]).
    134134\\\\
    135135=== 4. Output of three different masks with scaling length===
     
    164164    skip_time_domask = 0.,3600.,3600.,/
    165165}}}
    166 Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../d3par#skip_time_domask skip_time_domask]) for '''mask 2''' and '''3'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../d3par#dt_data_output dt_data_output] for '''mask 2''' and '''3''' (see [../d3par#dt_domask dt_domask]).\\\\
    167 Since [[../d3par#mask_scale_x|mask_scale_x]] and [../d3par#mask_scale_y mask_scale_y] are assigned, the parameters for steering the mask locations along x- and y-direction (here [../d3par#mask_x mask_x] and [../d3par#mask_y mask_y]) has to be given in multiples of [../d3par#mask_scale_x mask_scale_x] and [../d3par#mask_scale_y mask_scale_y].
     166Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../runtime_parameters#skip_time_domask skip_time_domask]) for '''mask 2''' and '''3'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../runtime_parameters#dt_data_output dt_data_output] for '''mask 2''' and '''3''' (see [../runtime_parameters#dt_domask dt_domask]).\\\\
     167Since [[../runtime_parameters#mask_scale_x|mask_scale_x]] and [../runtime_parameters#mask_scale_y mask_scale_y] are assigned, the parameters for steering the mask locations along x- and y-direction (here [../runtime_parameters#mask_x mask_x] and [../runtime_parameters#mask_y mask_y]) has to be given in multiples of [../runtime_parameters#mask_scale_x mask_scale_x] and [../runtime_parameters#mask_scale_y mask_scale_y].
    168168\\\\
    169169=== 5. Output of four different masks with user-defined quantities ===
     
    205205    data_output_masks_user(4,:) = 'u2',
    206206}}}
    207 Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../d3par#skip_time_domask skip_time_domask]) for '''mask 2, 3''' and '''4'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../d3par#dt_data_output dt_data_output] for '''mask 2, 3''' and '''4''' (see [../d3par#dt_domask dt_domask]).
     207Output starts from the beginning for '''mask 1''' and after 1h simulation time (see [../runtime_parameters#skip_time_domask skip_time_domask]) for '''mask 2, 3''' and '''4'''. It is done every 30 minutes for '''mask 1''' and at time intervals of [../runtime_parameters#dt_data_output dt_data_output] for '''mask 2, 3''' and '''4''' (see [../runtime_parameters#dt_domask dt_domask]).
    208208=== 6. Output of terrain-following mask ===
    209209'''Mask 1:''' xy cross section from x = 500m to x = 1000m and from y = 1000m to 2000m at the second, fith and tenth grid point above the surface. Output of instantaneous and time averaged data of the three wind components.\\
     
    227227    skip_time_domask = 3600.,/
    228228}}}
    229 Output starts after 1h simulation time (see [../d3par#skip_time_domask skip_time_domask]) for both masks and is done every 10 minutes for '''mask 1''' and every 30 minutes for '''mask 2''' (see [../d3par#dt_domask dt_domask]).
     229Output starts after 1h simulation time (see [../runtime_parameters#skip_time_domask skip_time_domask]) for both masks and is done every 10 minutes for '''mask 1''' and every 30 minutes for '''mask 2''' (see [../runtime_parameters#dt_domask dt_domask]).