Go to the documentation of this file.
12 #ifndef LORENZ95_INCREMENTL95_H_
13 #define LORENZ95_INCREMENTL95_H_
20 #include "atlas/field.h"
28 #include "oops/util/DateTime.h"
29 #include "oops/util/Duration.h"
30 #include "oops/util/ObjectCounter.h"
31 #include "oops/util/Printable.h"
32 #include "oops/util/Serializable.h"
46 class ModelBiasCorrection;
58 public util::Serializable,
60 private util::ObjectCounter<IncrementL95> {
62 static const std::string
classname() {
return "lorenz95::IncrementL95";}
73 void zero(
const util::DateTime &);
75 void dirac(
const eckit::Configuration &);
86 void setAtlas(atlas::FieldSet *)
const;
87 void toAtlas(atlas::FieldSet *)
const;
91 void read(
const eckit::Configuration &);
92 void write(
const eckit::Configuration &)
const;
104 std::shared_ptr<const Resolution>
geometry()
const {
115 void serialize(std::vector<double> &)
const override;
116 void deserialize(
const std::vector<double> &,
size_t &)
override;
119 void print(std::ostream &)
const override;
128 #endif // LORENZ95_INCREMENTL95_H_
std::shared_ptr< const Resolution > geometry() const
double dot_product_with(const IncrementL95 &) const
The namespace for the main oops code.
static const std::string classname()
util::DateTime & validTime()
Abstract base class for quantities.
void print(std::ostream &) const override
size_t serialSize() const override
Serialize and deserialize.
void fromAtlas(atlas::FieldSet *)
void setAtlas(atlas::FieldSet *) const
ATLAS.
std::vector< double > & asVector()
std::vector< double > & asVector()
void read(const eckit::Configuration &)
Utilities.
void write(const eckit::Configuration &) const
void deserialize(const std::vector< double > &, size_t &) override
void schur_product_with(const IncrementL95 &)
IncrementL95 & operator*=(const double &)
void dirac(const eckit::Configuration &)
const util::DateTime & validTime() const
Increment Class: Difference between two states.
void serialize(std::vector< double > &) const override
oops::LocalIncrement getLocal(const Iterator &) const
IncrementL95(const Resolution &, const oops::Variables &, const util::DateTime &)
Constructor, destructor.
IncrementL95 & operator-=(const IncrementL95 &)
void updateTime(const util::Duration &dt)
void axpy(const double &, const IncrementL95 &, const bool check=true)
void setLocal(const oops::LocalIncrement &, const Iterator &)
void accumul(const double &, const StateL95 &)
const std::vector< double > & asVector() const
IncrementL95 & operator=(const IncrementL95 &)
const FieldL95 & getField() const
Access to data.
void diff(const StateL95 &, const StateL95 &)
Basic operators.
void toAtlas(atlas::FieldSet *) const
IncrementL95 & operator+=(const IncrementL95 &)
Class to represent fields for the L95 model.
const int & resol() const
Set and get.
The namespace for the L95 model.