20 #include "eckit/config/LocalConfiguration.h" 23 #include "oops/util/Logger.h" 32 std::vector<double> zz(4, 0.0);
33 if (
conf.has(
"stream")) zz[0] =
conf.getDouble(
"stream");
34 if (
conf.has(
"uwind")) zz[1] =
conf.getDouble(
"uwind");
35 if (
conf.has(
"vwind")) zz[2] =
conf.getDouble(
"vwind");
36 if (
conf.has(
"wspeed")) zz[3] =
conf.getDouble(
"wspeed");
38 std::string strn =
"";
40 if (jj > 0) strn +=
", ";
41 if (std::abs(zz[jj]) > 1.0
e-8) {
43 std::ostringstream strs;
51 oops::Log::info() <<
"ObsBiasCovariance created, variances = " << strn << std::endl;
78 static std::mt19937 generator(4);
79 static std::normal_distribution<double> distribution(0.0, 1.0);
82 double zz = distribution(generator);
91 os <<
"ObsBiasCovariance::print not implemented";
void print(std::ostream &) const
std::vector< double > variance_
void multiply(const ObsBiasIncrement &, ObsBiasIncrement &) const
void randomize(ObsBiasIncrement &) const
Class to handle observation bias parameters.
real(fp), parameter, public e
ObsBiasCovariance(const eckit::Configuration &)
Constructor, destructor.
void inverseMultiply(const ObsBiasIncrement &, ObsBiasIncrement &) const
subroutine, public info(self)
static const unsigned int ntypes
The namespace for the qg model.