16 #include "ioda/ObsVector.h"
18 #include "oops/base/Variables.h"
19 #include "oops/util/IntSetParser.h"
21 #include "ufo/GeoVaLs.h"
22 #include "ufo/ObsDiagnostics.h"
32 const eckit::Configuration & config)
37 const oops::Variables & observed = odb.obsvariables();
38 std::vector<int> channels_list = observed.channels();
42 channels_list.size(), channels_list[0],
varin_);
44 oops::Log::info() <<
"ObsRadianceRTTOV channels: " << channels_list << std::endl;
45 oops::Log::trace() <<
"ObsRadianceRTTOV created." << std::endl;
52 oops::Log::trace() <<
"ObsRadianceRTTOV destructed" << std::endl;
60 ovec.nvars(), ovec.nlocs(), ovec.toFortran(),
62 oops::Log::trace() <<
"ObsRadianceRTTOV simulateObs done." << std::endl;
68 os <<
"ObsRadianceRTTOV::print not implemented";
GeoVaLs: geophysical values at locations.
ObsRadianceRTTOV(const ioda::ObsSpace &, const eckit::Configuration &)
virtual ~ObsRadianceRTTOV()
F90hop keyOperRadianceRTTOV_
void print(std::ostream &) const override
void simulateObs(const GeoVaLs &, ioda::ObsVector &, ObsDiagnostics &) const override
Obs Operator.
const ioda::ObsSpace & odb_
static ObsOperatorMaker< ObsRadianceRTTOV > makerRTTOV_("RTTOV")
void ufo_radiancerttov_delete_f90(F90hop &)
void ufo_radiancerttov_simobs_f90(const F90hop &, const F90goms &, const ioda::ObsSpace &, const int &, const int &, double &, const F90goms &)
void ufo_radiancerttov_setup_f90(F90hop &, const eckit::Configuration &, const int &, const int &, oops::Variables &)
Interface to Fortran UFO routines.