11 #ifndef QG_MODEL_TLMQG_H_
12 #define QG_MODEL_TLMQG_H_
18 #include <boost/noncopyable.hpp>
22 #include "oops/util/Duration.h"
23 #include "oops/util/ObjectCounter.h"
24 #include "oops/util/Printable.h"
26 #include "oops/qg/ModelQG.h"
27 #include "oops/qg/QgFortran.h"
28 #include "oops/qg/QgTraits.h"
43 private util::ObjectCounter<TlmQG> {
45 static const std::string
classname() {
return "qg::TlmQG";}
68 void print(std::ostream &)
const override;
69 typedef std::map< util::DateTime, int >::iterator
trajIter;
70 typedef std::map< util::DateTime, int >::const_iterator
trajICst;
76 std::map< util::DateTime, F90flds>
traj_;
Base class for encapsulation of the linear forecast model.
GeometryQG handles geometry for QG model.
Increment Class: Difference between two states.
Model error for the QG model.
QG linear model definition.
void print(std::ostream &) const override
const util::Duration & timeResolution() const override
Other utilities.
void initializeTL(IncrementQG &) const override
Run TLM and its adjoint.
void stepTL(IncrementQG &, const ModelBiasIncrement &) const override
std::map< util::DateTime, int >::iterator trajIter
void finalizeTL(IncrementQG &) const override
void setTrajectory(const StateQG &, StateQG &, const ModelBias &) override
Model trajectory computation.
void stepAD(IncrementQG &, ModelBiasIncrement &) const override
std::map< util::DateTime, F90flds > traj_
TlmQG(const GeometryQG &, const eckit::Configuration &)
void initializeAD(IncrementQG &) const override
std::map< util::DateTime, int >::const_iterator trajICst
void finalizeAD(IncrementQG &) const override
const oops::Variables & variables() const override
const GeometryQG & resolution() const
static const std::string classname()
The namespace for the qg model.