19 #include "atlas/field.h"
21 #include "eckit/config/LocalConfiguration.h"
22 #include "eckit/exception/Exceptions.h"
25 #include "oops/util/DateTime.h"
26 #include "oops/util/Duration.h"
27 #include "oops/util/Logger.h"
43 const util::DateTime & vt)
44 : fields_(new
FieldsQG(resol, vars, lbc_, vt))
47 oops::Log::trace() <<
"IncrementQG constructed." << std::endl;
51 : fields_(new
FieldsQG(*other.fields_, resol))
53 oops::Log::trace() <<
"IncrementQG constructed from other." << std::endl;
57 : fields_(new
FieldsQG(*other.fields_, copy))
59 oops::Log::trace() <<
"IncrementQG copy-created." << std::endl;
63 : fields_(new
FieldsQG(*other.fields_))
65 oops::Log::trace() <<
"IncrementQG copy-created." << std::endl;
69 oops::Log::trace() <<
"IncrementQG destructed" << std::endl;
138 util::DateTime dd(config.getString(
"date"));
169 size_t nn =
fields_->serialSize();
178 fields_->deserialize(vect, index);
182 os << std::endl <<
" Valid time: " <<
validTime();
187 return fields_->getLocal(iter);
191 fields_->setLocal(values, iter);
Class to represent a Fields for the QG model.
GeometryQG handles geometry for QG model.
Increment Class: Difference between two states.
double dot_product_with(const IncrementQG &) const
void setAtlas(atlas::FieldSet *) const
ATLAS FieldSet.
void axpy(const double &, const IncrementQG &, const bool check=true)
void setLocal(const oops::LocalIncrement &, const GeometryQGIterator &)
void print(std::ostream &) const override
Data.
void read(const eckit::Configuration &)
I/O and diagnostics.
const util::DateTime & validTime() const
void toAtlas(atlas::FieldSet *) const
void dirac(const eckit::Configuration &)
void write(const eckit::Configuration &) const
IncrementQG & operator+=(const IncrementQG &)
IncrementQG & operator=(const IncrementQG &)
void schur_product_with(const IncrementQG &)
void serialize(std::vector< double > &) const override
IncrementQG & operator-=(const IncrementQG &)
void diff(const StateQG &, const StateQG &)
Basic operators.
void deserialize(const std::vector< double > &, size_t &) override
size_t serialSize() const override
Serialization.
void fromAtlas(atlas::FieldSet *)
oops::LocalIncrement getLocal(const GeometryQGIterator &) const
IncrementQG(const GeometryQG &, const oops::Variables &, const util::DateTime &)
Constructor, destructor.
std::unique_ptr< FieldsQG > fields_
IncrementQG & operator*=(const double &)
void accumul(const double &, const StateQG &)
Other.
FieldsQG & fields()
Access to fields.
const util::DateTime & validTime() const
The namespace for the qg model.