UFO
ufo::GaussianThinningParameters Class Reference

Options controlling the operation of the Gaussian_Thinning filter. More...

#include <GaussianThinningParameters.h>

Inheritance diagram for ufo::GaussianThinningParameters:
Collaboration diagram for ufo::GaussianThinningParameters:

Public Attributes

oops::Parameter< float > horizontalMesh {"horizontal_mesh", defaultHorizontalMesh(), this}
 
oops::Parameter< bool > useReducedHorizontalGrid {"use_reduced_horizontal_grid", true, this}
 
oops::Parameter< bool > roundHorizontalBinCountToNearest
 
oops::Parameter< float > verticalMesh {"vertical_mesh", -1.0f, this}
 
oops::Parameter< float > verticalMin {"vertical_min", 100.0f, this}
 Lower bound of the pressure interval split into cells of size vertical_mesh. More...
 
oops::Parameter< float > verticalMax {"vertical_max", 110000.0f, this}
 
oops::OptionalParameter< util::Duration > timeMesh {"time_mesh", this}
 
oops::OptionalParameter< util::DateTime > timeMin {"time_min", this}
 
oops::OptionalParameter< util::DateTime > timeMax {"time_max", this}
 
oops::OptionalParameter< VariablecategoryVariable {"category_variable", this}
 
oops::OptionalParameter< VariablepriorityVariable {"priority_variable", this}
 
oops::Parameter< DistanceNormdistanceNorm {"distance_norm", DistanceNorm::GEODESIC, this}
 

Static Private Member Functions

static float defaultHorizontalMesh ()
 

Detailed Description

Options controlling the operation of the Gaussian_Thinning filter.

Definition at line 54 of file GaussianThinningParameters.h.

Member Function Documentation

◆ defaultHorizontalMesh()

static float ufo::GaussianThinningParameters::defaultHorizontalMesh ( )
inlinestaticprivate

Definition at line 127 of file GaussianThinningParameters.h.

Member Data Documentation

◆ categoryVariable

oops::OptionalParameter<Variable> ufo::GaussianThinningParameters::categoryVariable {"category_variable", this}

Variable storing integer-valued IDs associated with observations. Observations belonging to different categories are thinned separately.

Definition at line 108 of file GaussianThinningParameters.h.

◆ distanceNorm

oops::Parameter<DistanceNorm> ufo::GaussianThinningParameters::distanceNorm {"distance_norm", DistanceNorm::GEODESIC, this}

Determines which of the highest-priority observations lying in a cell is retained. Allowed values:

  • geodesic: retain the observation closest to the cell centre in the horizontal direction (air pressure and time are ignored)
  • maximum: retain the observation lying furthest from the cell's bounding box in the system of coordinates in which the cell is a unit cube (all dimensions along which thinning is enabled are taken into account).

Definition at line 124 of file GaussianThinningParameters.h.

◆ horizontalMesh

oops::Parameter<float> ufo::GaussianThinningParameters::horizontalMesh {"horizontal_mesh", defaultHorizontalMesh(), this}

Cell size (in km) along the meridians. Thinning in the horizontal direction is disabled if this parameter is negative.

Definition at line 66 of file GaussianThinningParameters.h.

◆ priorityVariable

oops::OptionalParameter<Variable> ufo::GaussianThinningParameters::priorityVariable {"priority_variable", this}

Variable storing observation priorities. Among all observations in a cell, only those with the highest priority are considered as candidates for retaining. If not specified, all observations are assumed to have equal priority.

Definition at line 115 of file GaussianThinningParameters.h.

◆ roundHorizontalBinCountToNearest

oops::Parameter<bool> ufo::GaussianThinningParameters::roundHorizontalBinCountToNearest
Initial value:
{
"round_horizontal_bin_count_to_nearest", false, this}

True to set the number of zonal bands so that the band width is as close as possible to horizontal_mesh, and the number of bins in each zonal band so that the bin width in the zonal direction is as close as possible to that in the meridional direction. False to set the number of zonal bands so that the band width is as small as possible, but no smaller than horizontal_mesh, and the bin width in the zonal direction is as small as possible, but no smaller than in the meridional direction.

Definition at line 76 of file GaussianThinningParameters.h.

◆ timeMax

oops::OptionalParameter<util::DateTime> ufo::GaussianThinningParameters::timeMax {"time_max", this}

Upper bound of the time interval split into cells of size time_mesh. This parameter is rounded upwards to the nearest multiple of time_mesh starting from time_min. Temporal thinning is disabled if this parameter is not specified.

Definition at line 102 of file GaussianThinningParameters.h.

◆ timeMesh

oops::OptionalParameter<util::Duration> ufo::GaussianThinningParameters::timeMesh {"time_mesh", this}

Cell size in the temporal direction. Temporal thinning is disabled if this this parameter is not specified or set to 0.

Definition at line 95 of file GaussianThinningParameters.h.

◆ timeMin

oops::OptionalParameter<util::DateTime> ufo::GaussianThinningParameters::timeMin {"time_min", this}

Lower bound of the time interval split into cells of size time_mesh. Temporal thinning is disabled if this parameter is not specified.

Definition at line 98 of file GaussianThinningParameters.h.

◆ useReducedHorizontalGrid

oops::Parameter<bool> ufo::GaussianThinningParameters::useReducedHorizontalGrid {"use_reduced_horizontal_grid", true, this}

True to use a reduced grid, with fewer cells at high latitudes. False to use a regular grid, with the same number of cells at all latitudes.

Definition at line 69 of file GaussianThinningParameters.h.

◆ verticalMax

oops::Parameter<float> ufo::GaussianThinningParameters::verticalMax {"vertical_max", 110000.0f, this}

Upper bound of the pressure interval split into cells of size vertical_mesh. This parameter is rounded upwards to the nearest multiple of vertical_mesh starting from vertical_min.

Definition at line 89 of file GaussianThinningParameters.h.

◆ verticalMesh

oops::Parameter<float> ufo::GaussianThinningParameters::verticalMesh {"vertical_mesh", -1.0f, this}

Cell size (in Pa) in the vertical direction. Thinning in the vertical direction is disabled if this parameter is not specified or negative.

Definition at line 83 of file GaussianThinningParameters.h.

◆ verticalMin

oops::Parameter<float> ufo::GaussianThinningParameters::verticalMin {"vertical_min", 100.0f, this}

Lower bound of the pressure interval split into cells of size vertical_mesh.

Definition at line 85 of file GaussianThinningParameters.h.


The documentation for this class was generated from the following file: