11 #ifndef LORENZ95_INCREMENTL95_H_ 12 #define LORENZ95_INCREMENTL95_H_ 22 #include "oops/util/DateTime.h" 23 #include "oops/util/Duration.h" 24 #include "oops/util/ObjectCounter.h" 25 #include "oops/util/Printable.h" 32 class UnstructuredGrid;
39 class ModelBiasCorrection;
53 private util::ObjectCounter<IncrementL95> {
55 static const std::string
classname() {
return "lorenz95::IncrementL95";}
66 void zero(
const util::DateTime &);
67 void dirac(
const eckit::Configuration &);
89 void read(
const eckit::Configuration &);
90 void write(
const eckit::Configuration &)
const;
99 boost::shared_ptr<const Resolution>
geometry()
const {
109 void print(std::ostream &)
const;
118 #endif // LORENZ95_INCREMENTL95_H_
void diff(const StateL95 &, const StateL95 &)
Basic operators.
GomL95 class to handle locations for L95 model.
double dot_product_with(const IncrementL95 &) const
boost::shared_ptr< const Resolution > geometry() const
Increment Class: Difference between two states.
void field_from_ug(const oops::UnstructuredGrid &)
void getValuesAD(const LocsL95 &, const oops::Variables &, const GomL95 &, const Nothing &)
void updateTime(const util::Duration &dt)
void field_to_ug(oops::UnstructuredGrid &, const int &) const
void getValuesTL(const LocsL95 &, const oops::Variables &, GomL95 &, const Nothing &) const
Get increment values at obs locations.
LocsL95 class to handle locations for L95 model.
The namespace for the main oops code.
const FieldL95 & getField() const
Access to data.
IncrementL95 & operator-=(const IncrementL95 &)
const std::vector< double > & asVector() const
void ug_coord(oops::UnstructuredGrid &, const int &) const
Unstructured grid.
void dirac(const eckit::Configuration &)
void accumul(const double &, const StateL95 &)
void axpy(const double &, const IncrementL95 &, const bool check=true)
The namespace for the L95 model.
std::vector< double > & asVector()
static const std::string classname()
util::DateTime & validTime()
const int & resol() const
Set and get.
IncrementL95 & operator+=(const IncrementL95 &)
void write(const eckit::Configuration &) const
IncrementL95 & operator=(const IncrementL95 &)
void read(const eckit::Configuration &)
Utilities.
void schur_product_with(const IncrementL95 &)
IncrementL95(const Resolution &, const oops::Variables &, const util::DateTime &)
Constructor, destructor.
std::vector< double > & asVector()
Abstract base class for quantities.
IncrementL95 & operator*=(const double &)
const util::DateTime & validTime() const
void print(std::ostream &) const
Class to represent fields for the L95 model.