Finds pairs of close observations ("buddies") to check against each other.
More...
#include <MetOfficeBuddyPairFinder.h>
Finds pairs of close observations ("buddies") to check against each other.
Definition at line 26 of file src/ufo/filters/MetOfficeBuddyPairFinder.h.
◆ MetOfficeBuddyPairFinder()
ufo::MetOfficeBuddyPairFinder::MetOfficeBuddyPairFinder |
( |
const MetOfficeBuddyCheckParameters & |
options, |
|
|
const std::vector< float > & |
latitudes, |
|
|
const std::vector< float > & |
longitudes, |
|
|
const std::vector< util::DateTime > & |
datetimes, |
|
|
const std::vector< float > * |
pressures, |
|
|
const std::vector< int > & |
stationIds |
|
) |
| |
◆ findBuddyPairs()
std::vector< MetOfficeBuddyPair > ufo::MetOfficeBuddyPairFinder::findBuddyPairs |
( |
const std::vector< size_t > & |
validObsIds | ) |
|
◆ getLongitudeSearchRangeHalfWidth()
float ufo::MetOfficeBuddyPairFinder::getLongitudeSearchRangeHalfWidth |
( |
int |
bandIndex, |
|
|
float |
bandWidth |
|
) |
| const |
|
private |
◆ makeBuddyCollector()
◆ pairObservations()
std::vector< MetOfficeBuddyPair > ufo::MetOfficeBuddyPairFinder::pairObservations |
( |
const std::vector< int > & |
validObsIdsInSortOrder, |
|
|
const std::vector< int > & |
bandLbounds |
|
) |
| |
|
private |
Finds pairs of observations to be considered as buddies. Calculates the distance and mutual orientation of each pair of buddies.
See the OPS Scientific Documentation Paper 2, sections 3.4 and 3.5.
- Parameters
-
- Returns
- Vector of pairs of observations to be considered as buddies.
Definition at line 102 of file MetOfficeBuddyPairFinder.cc.
◆ sortObservations()
void ufo::MetOfficeBuddyPairFinder::sortObservations |
( |
const std::vector< size_t > & |
validObsIds, |
|
|
std::vector< int > & |
validObsIdsInSortOrder, |
|
|
std::vector< int > & |
bandLbounds |
|
) |
| |
|
private |
Sorts observations in an order facilitating rapid search for buddies.
See the OPS Scientific Documentation Paper 2, section 3.3.
- Parameters
-
[in] | validObsIds | IDs of valid observations. |
[out] | validObsIdsInSortOrder | IDs of valid observations sorted by zonal band index, longitude, -latitude, air pressure (if available) and time. |
[out] | bandLbounds | On output, a vector of length (options_.numZonalBands + 1) such that [bandLbounds [i], bandLbounds [i + 1]) is the half-open range of indices of elements of validObsIdsInSortOrder representing the IDs of observations from ith zonal band. |
Definition at line 48 of file MetOfficeBuddyPairFinder.cc.
◆ datetimes_
const std::vector<util::DateTime>& ufo::MetOfficeBuddyPairFinder::datetimes_ |
|
private |
◆ latitudes_
const std::vector<float>& ufo::MetOfficeBuddyPairFinder::latitudes_ |
|
private |
◆ longitudes_
const std::vector<float>& ufo::MetOfficeBuddyPairFinder::longitudes_ |
|
private |
◆ options_
◆ pressures_
const std::vector<float>* ufo::MetOfficeBuddyPairFinder::pressures_ |
|
private |
◆ stationIds_
const std::vector<int>& ufo::MetOfficeBuddyPairFinder::stationIds_ |
|
private |
The documentation for this class was generated from the following files: