8 #ifndef UFO_FILTERS_BACKGROUNDCHECK_H_
9 #define UFO_FILTERS_BACKGROUNDCHECK_H_
16 #include "oops/util/ObjectCounter.h"
17 #include "oops/util/parameters/OptionalParameter.h"
18 #include "oops/util/Printable.h"
29 template <
typename DATATYPE>
class ObsDataVector;
51 oops::OptionalParameter<std::string>
threshold{
"threshold",
this};
73 "function absolute threshold",
this};
79 oops::Parameter<std::string>
test_hofx{
"test_hofx",
"HofX",
this};
86 private util::ObjectCounter<BackgroundCheck> {
92 static const std::string
classname() {
return "ufo::BackgroundCheck";}
100 void print(std::ostream &)
const override;
102 std::vector<std::vector<bool>> &)
const override;
void applyFilter(const std::vector< bool > &, const Variables &, std::vector< std::vector< bool >> &) const override
Variable backgrErrVariable(const Variable &filterVariable) const
Return the name of the variable containing the background error estimate of the specified filter vari...
BackgroundCheck(ioda::ObsSpace &, const Parameters_ &, std::shared_ptr< ioda::ObsDataVector< int > >, std::shared_ptr< ioda::ObsDataVector< float > >)
void print(std::ostream &) const override
BackgroundCheckParameters Parameters_
static const std::string classname()
int qcFlag() const override
Parameters controlling the operation of the BackgroundCheck filter.
oops::OptionalParameter< std::string > absoluteThreshold
oops::Parameter< std::string > test_hofx
Name of the HofX group used to replace the default group (default is HofX)
oops::Parameter< bool > removeBiasCorrection
The filter uses bias-corrected H(x) unless remove bias correction is set to true.
oops::OptionalParameter< std::string > threshold
oops::Parameter< bool > thresholdWrtBGerror
oops::OptionalParameter< std::vector< Variable > > functionAbsoluteThreshold
Base class for UFO QC filters.
Parameters shared by all filters having a default action (typically "reject").