UFO
ufo::TrackCheckUtils Namespace Reference

Classes

class  ObsGroupLocationTimes
 Locations/times of all observations processed by the track checking filter. More...
 
class  ObsLocationTime
 
class  CheckCounter
 

Typedefs

typedef std::array< float, 3 > Point
 

Enumerations

enum class  CheckResult : char { FAILED = false , PASSED = true , SKIPPED }
 
enum class  SweepResult { NO_MORE_SWEEPS_REQUIRED , ANOTHER_SWEEP_REQUIRED }
 

Functions

float distance (const Point &a, const Point &b)
 Returns the distance between the two cartesian-mapped Point arguments More...
 
ObsAccessor createObsAccessor (const boost::optional< Variable > &stationIdVariable, const ioda::ObsSpace &obsdb)
 Create an ObsAccessor object providing access to observations that need to be checked by the current MPI task. More...
 
void sortTracksChronologically (const std::vector< size_t > &validObsIds, const ObsAccessor &obsAccessor, RecursiveSplitter &splitter)
 
ObsGroupLocationTimes collectObservationsLocations (const ObsAccessor &obsAccessor)
 

Typedef Documentation

◆ Point

typedef std::array<float, 3> ufo::TrackCheckUtils::Point

Definition at line 41 of file TrackCheckUtils.h.

Enumeration Type Documentation

◆ CheckResult

Enumerator
FAILED 
PASSED 
SKIPPED 

Definition at line 44 of file TrackCheckUtils.h.

◆ SweepResult

Enumerator
NO_MORE_SWEEPS_REQUIRED 
ANOTHER_SWEEP_REQUIRED 

Definition at line 51 of file TrackCheckUtils.h.

Function Documentation

◆ collectObservationsLocations()

TrackCheckUtils::ObsGroupLocationTimes ufo::TrackCheckUtils::collectObservationsLocations ( const ObsAccessor obsAccessor)

Definition at line 80 of file TrackCheckUtils.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createObsAccessor()

ObsAccessor ufo::TrackCheckUtils::createObsAccessor ( const boost::optional< Variable > &  stationIdVariable,
const ioda::ObsSpace &  obsdb 
)

Create an ObsAccessor object providing access to observations that need to be checked by the current MPI task.

The composition of this set of observations depends on the value of stationIdVariable.

If stationIdVariable is empty, observations are assumed to be grouped into tracks by the record ID. Each MPI rank is guaranteed to hold either all or no observations from a given record. Thus the returned ObsAccessor gives access to all observations from the records held on the current MPI rank.

Otherwise, observations are assumed to be grouped into tracks by the variable *stationIdVariable. If this variable was also used to group observations into records, the returned ObsAccessor is constructed as if stationIdVariable was empty; otherwise, it gives access to observations held on all MPI ranks.

Definition at line 55 of file TrackCheckUtils.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ distance()

float ufo::TrackCheckUtils::distance ( const Point a,
const Point b 
)

Returns the distance between the two cartesian-mapped Point arguments

Definition at line 51 of file TrackCheckUtils.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sortTracksChronologically()

void ufo::TrackCheckUtils::sortTracksChronologically ( const std::vector< size_t > &  validObsIds,
const ObsAccessor obsAccessor,
RecursiveSplitter splitter 
)

Definition at line 70 of file TrackCheckUtils.cc.

Here is the call graph for this function:
Here is the caller graph for this function: