8 #ifndef SOCA_MODEL_MODEL_H_
9 #define SOCA_MODEL_MODEL_H_
15 #include <boost/noncopyable.hpp>
16 #include <boost/scoped_ptr.hpp>
18 #include "oops/base/Variables.h"
19 #include "oops/interface/ModelBase.h"
20 #include "oops/util/Duration.h"
21 #include "oops/util/ObjectCounter.h"
22 #include "oops/util/Printable.h"
46 class Model:
public oops::interface::ModelBase<Traits>,
47 private util::ObjectCounter<Model>
50 static const std::string
classname() {
return "soca::Model";}
70 void print(std::ostream &)
const;
74 std::unique_ptr<const Geometry>
geom_;
Geometry handles geometry for SOCA model.
Model error for the SOCA model.
static const std::string classname()
Model(const Geometry &, const eckit::Configuration &)
const util::Duration & timeResolution() const
Utilities.
void step(State &, const ModelBias &) const
Model integration.
int saveTrajectory(State &, const ModelBias &) const
void print(std::ostream &) const
void finalize(State &) const
Finish model integration.
void initialize(State &) const
Prepare model integration.
const oops::Variables & variables() const
std::unique_ptr< const Geometry > geom_
const oops::Variables vars_