15 #include "ioda/ObsSpace.h"
24 :
PredictorBase(parameters, vars), predictor_(), satid_(parameters.satelliteId),
25 metadata_name_(parameters.metadataName) {
27 std::string predname = parameters.
predictor.value().getString(
"name");
29 params->validateAndDeserialize(parameters.
predictor.value());
44 ioda::ObsVector & out)
const {
45 const size_t nlocs = out.nlocs();
46 const size_t nvars = out.nvars();
50 std::vector<int> satid(
nlocs);
53 for (std::size_t jloc = 0; jloc <
nlocs; ++jloc) {
54 if (satid[jloc] !=
satid_) {
55 for (std::size_t jvar = 0; jvar < nvars; ++jvar) {
GeoVaLs: geophysical values at locations.
std::string & name()
predictor name
oops::Variables geovars_
required GeoVaLs
oops::Variables hdiags_
required ObsDiagnostics
static std::unique_ptr< PredictorBase > create(const PredictorParametersBase ¶meters, const oops::Variables &vars)
Create and return a new predictor.
static std::unique_ptr< PredictorParametersBase > createParameters(const std::string &name)
Create and return an instance of the subclass of PredictorParametersBase storing parameters of predic...
std::unique_ptr< PredictorBase > predictor_
The local predictor specified from yaml.
void compute(const ioda::ObsSpace &, const GeoVaLs &, const ObsDiagnostics &, ioda::ObsVector &) const override
compute the predictor
const std::string metadata_name_
SatelliteSelector(const Parameters_ &, const oops::Variables &)
Configuration parameters of the SatelliteSelector wrapper for a predictor.
oops::RequiredParameter< eckit::LocalConfiguration > predictor
The configuration for a specific predictor.
integer function nlocs(this)
Return the number of observational locations in this Locations object.
static PredictorMaker< SatelliteSelector > makerFuncSatelliteSelector_("satellite_selector")
static constexpr double zero