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";}
69 void print(std::ostream &)
const override;
70 typedef std::map< util::DateTime, int >::iterator
trajIter;
71 typedef std::map< util::DateTime, int >::const_iterator
trajICst;
77 std::map< util::DateTime, F90flds>
traj_;
Base class for MODEL-specific implementations of the LinearModel interface. interface::LinearModelBas...
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
Print, used in logging.
const util::Duration & timeResolution() const override
Other utilities.
void initializeTL(IncrementQG &) const override
Prepare model integration.
void stepTL(IncrementQG &, const ModelBiasIncrement &) const override
Model integration.
std::map< util::DateTime, int >::iterator trajIter
void finalizeTL(IncrementQG &) const override
Finish model integration.
void setTrajectory(const StateQG &, StateQG &, const ModelBias &) override
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
LinearModel variables (only used in 4DVar)
const GeometryQG & resolution() const
static const std::string classname()
The namespace for the qg model.