8 #ifndef OOPS_GENERIC_IDENTITYMODEL_H_
9 #define OOPS_GENERIC_IDENTITYMODEL_H_
19 #include "oops/util/Duration.h"
20 #include "oops/util/Logger.h"
21 #include "oops/util/parameters/Parameters.h"
22 #include "oops/util/parameters/RequiredParameter.h"
30 oops::RequiredParameter<util::Duration>
tstep{
"tstep",
this};
31 oops::RequiredParameter<Variables>
vars{
"state variables",
this};
35 template <
typename MODEL>
44 static const std::string
classname() {
return "oops::IdentityModel";}
61 void print(std::ostream &)
const override {}
67 template<
typename MODEL>
70 Log::trace() <<
"IdentityModel<MODEL>::IdentityModel done" << std::endl;
75 template<
typename MODEL>
77 Log::trace() <<
"IdentityModel<MODEL>::initialize done" << std::endl;
82 template<
typename MODEL>
84 Log::trace() <<
"IdentityModel<MODEL>:step Starting " << std::endl;
86 Log::trace() <<
"IdentityModel<MODEL>::step done" << std::endl;
91 template<
typename MODEL>
93 Log::trace() <<
"IdentityModel<MODEL>::finalize done" << std::endl;
Geometry class used in oops; subclass of interface class interface::Geometry.
Generic implementation of identity model.
void step(State_ &, const ModelAux_ &) const override
one forecast step
const IdentityModelParameters params_
Geometry< MODEL > Geometry_
void print(std::ostream &) const override
Print; used for logging.
const util::Duration & timeResolution() const override
model time step
const oops::Variables & variables() const override
model variables
static const std::string classname()
IdentityModelParameters Parameters_
void finalize(State_ &) const override
finalize forecast
void initialize(State_ &) const override
initialize forecast
IdentityModel(const Geometry_ &, const IdentityModelParameters &)
ModelAuxControl< MODEL > ModelAux_
oops::RequiredParameter< util::Duration > tstep
oops::RequiredParameter< Variables > vars
Auxiliary state related to model (could be e.g. model bias), not used at the moment.
Base class for generic implementations of the forecasting models. Use this class as a base class for ...
Base class for classes storing model-specific parameters.
State class used in oops; subclass of interface class interface::State.
void updateTime(const util::Duration &dt)
Update this State's valid time by dt.
The namespace for the main oops code.