UFO
ufo::MetOfficeBuddyCheckParameters Class Reference

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

#include <MetOfficeBuddyCheckParameters.h>

Inheritance diagram for ufo::MetOfficeBuddyCheckParameters:
Collaboration diagram for ufo::MetOfficeBuddyCheckParameters:

Public Attributes

Parameters controlling buddy pair identification
oops::OptionalParameter< int > numLevels {"num_levels", this}
 
oops::Parameter< float > searchRadius {"search_radius", 100, this}
 Maximum distance between two observations that may be classified as buddies, in km. More...
 
oops::OptionalParameter< VariablestationIdVariable {"station_id_variable", this}
 
oops::Parameter< int > numZonalBands {"num_zonal_bands", 24, this}
 
oops::Parameter< bool > sortByPressure {"sort_by_pressure", false, this}
 
oops::Parameter< int > maxTotalNumBuddies {"max_total_num_buddies", 15, this}
 
oops::Parameter< int > maxNumBuddiesFromSingleBand {"max_num_buddies_from_single_band", 10, this}
 
oops::Parameter< int > maxNumBuddiesWithSameStationId
 
oops::Parameter< bool > useLegacyBuddyCollector {"use_legacy_buddy_collector", false, this}
 
Parameters controlling gross error probability updates
oops::Parameter< std::map< float, float > > horizontalCorrelationScaleInterpolationPoints
 
oops::Parameter< util::Duration > temporalCorrelationScale
 Temporal correlation scale. More...
 
oops::Parameter< double > verticalCorrelationScale {"vertical_correlation_scale", 6, this}
 Vertical correlation scale (relates to the ratio of pressures). More...
 
oops::Parameter< double > dampingFactor1 {"damping_factor_1", 1.0, this}
 
oops::Parameter< double > dampingFactor2 {"damping_factor_2", 1.0, this}
 
oops::Parameter< double > nonDivergenceConstraint {"non_divergence_constraint", 1.0, this}
 Non-divergence constraint. Used only for vector variables. More...
 
Miscellaneous parameters
oops::Parameter< float > rejectionThreshold {"rejection_threshold", 0.5, this}
 Observations will be rejected if the gross error probability lies at or above this threshold. More...
 
oops::Parameter< std::vector< LatLonBoxParameters > > tracedBoxes {"traced_boxes", {}, this}
 Tracing information will be output for observations lying within any of the specified boxes. More...
 
- Public Attributes inherited from ufo::FilterParametersBaseWithAbstractAction
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

- Public Member Functions inherited from ufo::FilterParametersBase
const FilterActionParametersBaseaction () const override
 Return parameters defining the action performed on observations flagged by the filter. More...
 

Detailed Description

Options controlling the operation of the MetOfficeBuddyCheck filter.

Definition at line 42 of file MetOfficeBuddyCheckParameters.h.

Member Data Documentation

◆ dampingFactor1

oops::Parameter<double> ufo::MetOfficeBuddyCheckParameters::dampingFactor1 {"damping_factor_1", 1.0, this}

Parameter used to "damp" gross error probability updates using method 1 described in section 3.8 of the OPS Scientific Documentation Paper 2 to make the buddy check better-behaved in data-dense areas. See the reference above for the full description.

Definition at line 134 of file MetOfficeBuddyCheckParameters.h.

◆ dampingFactor2

oops::Parameter<double> ufo::MetOfficeBuddyCheckParameters::dampingFactor2 {"damping_factor_2", 1.0, this}

Parameter used to "damp" gross error probability updates using method 2 described in section 3.8 of the OPS Scientific Documentation Paper 2 to make the buddy check better-behaved in data-dense areas. See the reference above for the full description.

Definition at line 139 of file MetOfficeBuddyCheckParameters.h.

◆ horizontalCorrelationScaleInterpolationPoints

oops::Parameter<std::map<float, float> > ufo::MetOfficeBuddyCheckParameters::horizontalCorrelationScaleInterpolationPoints
Initial value:
{
"horizontal_correlation_scale", {{-90.0f, 100.f}, {90.0f, 100.f}}, this}

Encoding of the function mapping the latitude (in degrees) to the horizontal correlation scale (in km).

The function is taken to be a linear interpolation of a series of (latitude, scale) points. The latitudes and scales at these points should be specified as keys and values of a JSON-style map. Owing to a bug in the eckit YAML parser, the keys must be enclosed in quotes. For example,

horizontal_correlation_scale: { "-90": 200, "90": 100 }

encodes a function varying linearly from 200 km at the south pole to 100 km at the north pole.

Definition at line 121 of file MetOfficeBuddyCheckParameters.h.

◆ maxNumBuddiesFromSingleBand

oops::Parameter<int> ufo::MetOfficeBuddyCheckParameters::maxNumBuddiesFromSingleBand {"max_num_buddies_from_single_band", 10, this}

Maximum number of buddies of any observation belonging to a single zonal band.

See the note next to maxTotalNumBuddies.

Definition at line 93 of file MetOfficeBuddyCheckParameters.h.

◆ maxNumBuddiesWithSameStationId

oops::Parameter<int> ufo::MetOfficeBuddyCheckParameters::maxNumBuddiesWithSameStationId
Initial value:
{
"max_num_buddies_with_same_station_id", 5, this}

Maximum number of buddies of any observation sharing that observation's station ID.

See the note next to maxTotalNumBuddies.

Definition at line 98 of file MetOfficeBuddyCheckParameters.h.

◆ maxTotalNumBuddies

oops::Parameter<int> ufo::MetOfficeBuddyCheckParameters::maxTotalNumBuddies {"max_total_num_buddies", 15, this}

Maximum total number of buddies of any observation.

Note
In the context of this parameter as well as the max_num_buddies_from_single_band max_num_buddies_with_same_station_id parameters, the number of buddies of any observation O is understood as the number of buddy pairs (O, O') where O' != O. This definition facilitates the buddy check implementation, but is an underestimate of the true number of buddies, since it doesn't take into account pairs of the form (O', O).

Definition at line 88 of file MetOfficeBuddyCheckParameters.h.

◆ nonDivergenceConstraint

oops::Parameter<double> ufo::MetOfficeBuddyCheckParameters::nonDivergenceConstraint {"non_divergence_constraint", 1.0, this}

Non-divergence constraint. Used only for vector variables.

Definition at line 142 of file MetOfficeBuddyCheckParameters.h.

◆ numLevels

oops::OptionalParameter<int> ufo::MetOfficeBuddyCheckParameters::numLevels {"num_levels", this}

Definition at line 49 of file MetOfficeBuddyCheckParameters.h.

◆ numZonalBands

oops::Parameter<int> ufo::MetOfficeBuddyCheckParameters::numZonalBands {"num_zonal_bands", 24, this}

Number of zonal bands to split the Earth's surface into when building a search data structure.

Apart from the impact on the speed of buddy identification, this parameter also affects the order in which observations are processed and thus the final estimates of gross error probabilities, since the probability updates made when checking individual observation pairs are not commutative.

Definition at line 71 of file MetOfficeBuddyCheckParameters.h.

◆ rejectionThreshold

oops::Parameter<float> ufo::MetOfficeBuddyCheckParameters::rejectionThreshold {"rejection_threshold", 0.5, this}

Observations will be rejected if the gross error probability lies at or above this threshold.

Definition at line 149 of file MetOfficeBuddyCheckParameters.h.

◆ searchRadius

oops::Parameter<float> ufo::MetOfficeBuddyCheckParameters::searchRadius {"search_radius", 100, this}

Maximum distance between two observations that may be classified as buddies, in km.

Definition at line 52 of file MetOfficeBuddyCheckParameters.h.

◆ sortByPressure

oops::Parameter<bool> ufo::MetOfficeBuddyCheckParameters::sortByPressure {"sort_by_pressure", false, this}

Whether to include pressure in the sorting criteria used when building a search data structure, in addition to longitude, latitude and time.

This parameter affects the order in which observations are processed and thus the final estimates of gross error probabilities, since the probability updates made when checking individual observation pairs are not commutative.

Definition at line 79 of file MetOfficeBuddyCheckParameters.h.

◆ stationIdVariable

oops::OptionalParameter<Variable> ufo::MetOfficeBuddyCheckParameters::stationIdVariable {"station_id_variable", this}

Variable storing string-valued or integer-valued station IDs.

If not set and observations were grouped into records when the observation space was constructed, each record is assumed to consist of observations taken by a separate station. If not set and observations were not grouped into records, all observations are assumed to have been taken by a single station.

Note: the variable used to group observations into records can be set with the obs space.obsdatain.obsgrouping.groupvariable YAML option.

Definition at line 63 of file MetOfficeBuddyCheckParameters.h.

◆ temporalCorrelationScale

oops::Parameter<util::Duration> ufo::MetOfficeBuddyCheckParameters::temporalCorrelationScale
Initial value:
{"temporal_correlation_scale",
util::Duration("PT6H"), this}

Temporal correlation scale.

Definition at line 125 of file MetOfficeBuddyCheckParameters.h.

◆ tracedBoxes

oops::Parameter<std::vector<LatLonBoxParameters> > ufo::MetOfficeBuddyCheckParameters::tracedBoxes {"traced_boxes", {}, this}

Tracing information will be output for observations lying within any of the specified boxes.

Definition at line 152 of file MetOfficeBuddyCheckParameters.h.

◆ useLegacyBuddyCollector

oops::Parameter<bool> ufo::MetOfficeBuddyCheckParameters::useLegacyBuddyCollector {"use_legacy_buddy_collector", false, this}

Set to true to identify pairs of buddy observations using an algorithm reproducing exactly the algorithm used in Met Office's OPS system, but potentially skipping some valid buddy pairs.

Definition at line 104 of file MetOfficeBuddyCheckParameters.h.

◆ verticalCorrelationScale

oops::Parameter<double> ufo::MetOfficeBuddyCheckParameters::verticalCorrelationScale {"vertical_correlation_scale", 6, this}

Vertical correlation scale (relates to the ratio of pressures).

Definition at line 129 of file MetOfficeBuddyCheckParameters.h.


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