10 #include "eckit/config/Configuration.h" 15 #include "oops/util/Logger.h" 24 : keyGVL_(-1), vars_(
vars)
26 oops::Log::trace() <<
"GeoVaLs contructor starting" << std::endl;
29 oops::Log::trace() <<
"GeoVaLs contructor key = " <<
keyGVL_ << std::endl;
33 : keyGVL_(-1), vars_(
vars)
35 oops::Log::trace() <<
"GeoVaLs constructor config starting" << std::endl;
38 config.get(
"random", irandom);
39 const eckit::Configuration *
conf = &config;
46 oops::Log::trace() <<
"GeoVaLs contructor config key = " <<
keyGVL_ << std::endl;
52 : keyGVL_(-1), vars_(other.vars_)
54 oops::Log::trace() <<
"GeoVaLs copy constructor starting" << std::endl;
59 oops::Log::trace() <<
"GeoVaLs copy constructor key = " <<
keyGVL_ << std::endl;
79 const eckit::Configuration & config)
81 const eckit::Configuration *
conf = &config;
82 if (config.has(
"analytic_init")) {
145 double zmin, zmax, zrms;
147 os <<
"GeoVaLs: nobs= " << nn <<
" Min=" << zmin <<
", Max=" << zmax
148 <<
", RMS=" << zrms << std::endl;
166 << std::setprecision(4)
167 << mxval <<
" for observation = " << iobs
168 <<
" and variable = " << ivar << std::endl;
173 const eckit::Configuration *
conf = &config;
179 const eckit::Configuration *
conf = &config;
void ufo_geovals_setup_f90(F90goms &, const F90locs &, const eckit::Configuration *const *)
Interface to Fortran UFO GeoVals routines.
void ufo_geovals_abs_f90(const F90goms &)
void abs()
Absolute value.
void ufo_geovals_setup_random_f90(const F90goms &, const eckit::Configuration *const *, const eckit::Configuration *const *)
void ufo_geovals_normalize_f90(const F90goms &, const F90goms &)
void ufo_geovals_minmaxavg_f90(const F90goms &, int &, double &, double &, double &)
void ufo_geovals_analytic_init_f90(F90goms &, const F90locs &, const eckit::Configuration *const *)
GeoVaLs & operator=(const GeoVaLs &)
GeoVaLs: geophysical values at locations.
GeoVaLs & operator-=(const GeoVaLs &)
void read(const eckit::Configuration &)
void ufo_geovals_create_f90(F90goms &)
void ufo_geovals_add_f90(const F90goms &, const F90goms &)
double dot_product_with(const GeoVaLs &other) const
GeoVaLs & operator+=(const GeoVaLs &)
void analytic_init(const ioda::Locations &, const eckit::Configuration &)
Analytic initialization for GeoVaLs.
void ufo_geovals_random_f90(const F90goms &)
Locations class to handle locations for IODA.
void write(const eckit::Configuration &) const
void print(std::ostream &) const
void ufo_geovals_delete_f90(F90goms &)
void ufo_geovals_zero_f90(const F90goms &)
void ufo_geovals_dotprod_f90(const F90goms &, const F90goms &, double &)
GeoVaLs(const ioda::Locations &, const oops::Variables &)
void ufo_geovals_scalmult_f90(const F90goms &, const double &)
void ufo_geovals_assign_f90(const F90goms &, const F90goms &)
void ufo_geovals_diff_f90(const F90goms &, const F90goms &)
void ufo_geovals_rms_f90(const F90goms &, double &)
GeoVaLs & operator*=(const double)
void ufo_geovals_read_file_f90(const F90goms &, const eckit::Configuration *const *, const eckit::Configuration *const *)
void ufo_geovals_copy_f90(const F90goms &, F90goms &)
void ufo_geovals_write_file_f90(const F90goms &, const eckit::Configuration *const *)
const eckit::Configuration & toFortran() const
void ufo_geovals_maxloc_f90(const F90goms &, double &, int &, int &)
GeoVaLs & operator/=(const GeoVaLs &)
GeoVaLs normalization.