UFO
|
Options controlling the operation of the PoissonDiskThinning filter. More...
#include <PoissonDiskThinningParameters.h>
Public Types | |
typedef int | Priority |
Public Attributes | |
oops::OptionalParameter< util::ScalarOrMap< Priority, float > > | minHorizontalSpacing |
oops::OptionalParameter< util::ScalarOrMap< Priority, float > > | minVerticalSpacing |
oops::OptionalParameter< util::ScalarOrMap< Priority, util::Duration > > | minTimeSpacing |
oops::Parameter< ExclusionVolumeShape > | exclusionVolumeShape |
oops::OptionalParameter< Variable > | categoryVariable {"category_variable", this} |
oops::OptionalParameter< Variable > | priorityVariable {"priority_variable", this} |
oops::Parameter< bool > | shuffle {"shuffle", true, this} |
oops::OptionalParameter< int > | randomSeed {"random_seed", this} |
![]() | |
oops::OptionalParameter< std::vector< Variable > > | filterVariables |
oops::Parameter< std::vector< WhereParameters > > | where {"where", {}, this} |
oops::Parameter< bool > | deferToPost {"defer to post", false, this} |
Additional Inherited Members | |
![]() | |
const FilterActionParametersBase & | action () const override |
Return parameters defining the action performed on observations flagged by the filter. More... | |
Options controlling the operation of the PoissonDiskThinning filter.
Definition at line 60 of file PoissonDiskThinningParameters.h.
typedef int ufo::PoissonDiskThinningParameters::Priority |
Definition at line 64 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<Variable> ufo::PoissonDiskThinningParameters::categoryVariable {"category_variable", this} |
A string-valued or integer-valued variable. Observations with different values of that variable will be thinned separately.
If not set and observations were grouped into records when the observation space was constructed, observations from each record will be thinned separately. If not set and observations were not grouped into records, all observations will be thinned together.
Note: the variable used to group observations into records can be set with the obs
space.obsdatain.obsgrouping.group variable YAML option.
Definition at line 140 of file PoissonDiskThinningParameters.h.
oops::Parameter<ExclusionVolumeShape> ufo::PoissonDiskThinningParameters::exclusionVolumeShape |
Shape of the exclusion volume surrounding each observation.
Allowed values:
cylinder:
the exclusion volume of an observation taken at latitude lat, longitude lon, pressure p and time t is the set of all locations (lat', lon', p', t') for which all of the following conditions are met:ellipsoid:
the exclusion volume of an observation taken at latitude lat, longitude lon, pressure p and time t is the set of all locations (lat', lon', p', t') for which the following condition is met:Definition at line 126 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<util::ScalarOrMap<Priority, float> > ufo::PoissonDiskThinningParameters::minHorizontalSpacing |
Size of the exclusion volume in the horizontal direction (in km).
If the priority_variable parameter is not set and hence all observations have the same priority, this parameter must be a floating-point constant. Otherwise it may also be a map assigning an exclusion volume size to each observation priority. Exclusion volumes of lower-priority observations must be at least as large as those of higher-priority ones. If this parameter is not set, horizontal position is ignored during thinning.
min_horizontal_spacing: {"1": 123, "2": 321}
This will not work:
min_horizontal_spacing: {1: 123, 2: 321}
and neither will this:
min_horizontal_spacing: 1: 123 2: 321
or this:
min_horizontal_spacing: "1": 123 "2": 321
Definition at line 96 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<util::ScalarOrMap<Priority, util::Duration> > ufo::PoissonDiskThinningParameters::minTimeSpacing |
Size of the exclusion volume in the temporal direction.
Like min_horizontal_spacing, this can be either a constant or a map.
Definition at line 108 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<util::ScalarOrMap<Priority, float> > ufo::PoissonDiskThinningParameters::minVerticalSpacing |
Size of the exclusion volume in the vertical direction (in Pa).
Like min_horizontal_spacing, this can be either a constant or a map.
Definition at line 102 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<Variable> ufo::PoissonDiskThinningParameters::priorityVariable {"priority_variable", this} |
Variable storing observation priorities. An observation will not be retained if it lies within the exclusion volume of an observation with a higher priority.
As noted in the documentation of min_horizontal_spacing, the exclusion volume size must be a (weakly) monotonically decreasing function of observation priority, i.e. the exclusion volumes of all observations with the same priority must have the same size, and the exclusion volumes of lower-priority observations must be at least as large as those of higher-priority ones.
If this parameter is not set, all observations are assumed to have equal priority.
Definition at line 153 of file PoissonDiskThinningParameters.h.
oops::OptionalParameter<int> ufo::PoissonDiskThinningParameters::randomSeed {"random_seed", this} |
Seed with which to initialize the random number generator used to shuffle the observations if shuffle
is set to true.
If omitted, a seed will be generated based on the current (calendar) time.
Definition at line 168 of file PoissonDiskThinningParameters.h.
oops::Parameter<bool> ufo::PoissonDiskThinningParameters::shuffle {"shuffle", true, this} |
If true, observations will be randomly shuffled before being inspected as candidates for retaining.
Definition at line 162 of file PoissonDiskThinningParameters.h.