UFO
ufo::ProfileAverageRelativeHumidity Class Reference

Profile QC: average relative humidity observations onto model levels. More...

#include <ProfileAverageRelativeHumidity.h>

Inheritance diagram for ufo::ProfileAverageRelativeHumidity:
Collaboration diagram for ufo::ProfileAverageRelativeHumidity:

Public Member Functions

 ProfileAverageRelativeHumidity (const ConventionalProfileProcessingParameters &options)
 
void runCheck (ProfileDataHandler &profileDataHandler) override
 
void fillValidationData (ProfileDataHolder &profileDataHolder)
 Fill variables in validator (for comparison with OPS output). More...
 
bool runOnEntireSample () override
 Run this check on the entire sample? More...
 
oops::Variables getGeoVaLNames () override
 List of names of required GeoVaLs. More...
 
oops::Variables getValidationGeoVaLNames () override
 List of names of GeoVaLs used in check validation. More...
 
- Public Member Functions inherited from ufo::ProfileCheckBase
 ProfileCheckBase (const ConventionalProfileProcessingParameters &options)
 
virtual ~ProfileCheckBase ()
 
virtual void fillValidationData (ProfileDataHandler &profileDataHandler)
 
virtual bool getResult ()
 Get result of check (default fail) More...
 
virtual oops::Variables getObsDiagNames ()
 List of names of required obs diagnostics. More...
 

Private Member Functions

void runCheckOnProfiles (ProfileDataHolder &profileOriginal, ProfileDataHolder &profileExtended)
 

Additional Inherited Members

- Protected Member Functions inherited from ufo::ProfileCheckBase
template<typename T >
void correctVector (const std::vector< T > &v1, const std::vector< T > &v2, std::vector< T > &vout)
 Apply correction to vector of values. More...
 
template<typename T >
void SetQCFlag (const int &flag, const size_t &jlev, std::vector< T > &vec)
 
template<typename T , typename... Args>
void SetQCFlag (const int &flag, const size_t &jlev, std::vector< T > &vec1, Args &... vecs)
 
- Protected Attributes inherited from ufo::ProfileCheckBase
const ConventionalProfileProcessingParametersoptions_
 Configurable parameters. More...
 
const int missingValueInt = util::missingValue(1)
 Missing value (int) More...
 
const float missingValueFloat = util::missingValue(1.0f)
 Missing value (float) More...
 

Detailed Description

Profile QC: average relative humidity observations onto model levels.

Vectors produced by the AveragePressure routine must be present otherwise the exception eckit::BadValue will be thrown.

By default, relative humidities are interpolated onto model layer boundaries rather than averaged across layers in order to avoid unwanted smoothing. This behaviour can be controlled with the AvgRH_Interp option.

The interpolated/averaged relative humidity values are rejected at any layer where the averaged temperature value is less than or equal to the threshold AvgRH_AvgTThreshold. This threshold can be modified to an instrument-dependent value with the parameter AvgRH_InstrTThresholds, which is a map between WMO sonde instrument codes and the associated temperature thresholds.

Definition at line 43 of file ProfileAverageRelativeHumidity.h.

Constructor & Destructor Documentation

◆ ProfileAverageRelativeHumidity()

ufo::ProfileAverageRelativeHumidity::ProfileAverageRelativeHumidity ( const ConventionalProfileProcessingParameters options)
explicit

Definition at line 25 of file ProfileAverageRelativeHumidity.cc.

Member Function Documentation

◆ fillValidationData()

void ufo::ProfileAverageRelativeHumidity::fillValidationData ( ProfileDataHolder profileDataHolder)

Fill variables in validator (for comparison with OPS output).

Definition at line 246 of file ProfileAverageRelativeHumidity.cc.

Here is the caller graph for this function:

◆ getGeoVaLNames()

oops::Variables ufo::ProfileAverageRelativeHumidity::getGeoVaLNames ( )
inlineoverridevirtual

List of names of required GeoVaLs.

Reimplemented from ufo::ProfileCheckBase.

Definition at line 59 of file ProfileAverageRelativeHumidity.h.

◆ getValidationGeoVaLNames()

oops::Variables ufo::ProfileAverageRelativeHumidity::getValidationGeoVaLNames ( )
inlineoverridevirtual

List of names of GeoVaLs used in check validation.

Reimplemented from ufo::ProfileCheckBase.

Definition at line 63 of file ProfileAverageRelativeHumidity.h.

◆ runCheck()

void ufo::ProfileAverageRelativeHumidity::runCheck ( ProfileDataHandler profileDataHandler)
overridevirtual

Average relative humidity observations onto model levels and store the results.

Exceptions
eckit::BadValueif vectors produced by the AveragePressure routine are not present.

Implements ufo::ProfileCheckBase.

Definition at line 30 of file ProfileAverageRelativeHumidity.cc.

Here is the call graph for this function:

◆ runCheckOnProfiles()

void ufo::ProfileAverageRelativeHumidity::runCheckOnProfiles ( ProfileDataHolder profileOriginal,
ProfileDataHolder profileExtended 
)
private

Run check on a profile in the original ObsSpace and put the averaged data into the corresponding profile in the extended ObsSpace.

Definition at line 99 of file ProfileAverageRelativeHumidity.cc.

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

◆ runOnEntireSample()

bool ufo::ProfileAverageRelativeHumidity::runOnEntireSample ( )
inlineoverridevirtual

Run this check on the entire sample?

Reimplemented from ufo::ProfileCheckBase.

Definition at line 56 of file ProfileAverageRelativeHumidity.h.


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