Go to the documentation of this file.
8 #ifndef FV3JEDI_STATE_STATE_H_
9 #define FV3JEDI_STATE_STATE_H_
16 #include "oops/base/Variables.h"
17 #include "oops/util/DateTime.h"
18 #include "oops/util/ObjectCounter.h"
19 #include "oops/util/Printable.h"
45 class State :
public util::Printable,
private util::ObjectCounter<State> {
47 static const std::string
classname() {
return "fv3jedi::State";}
50 State(
const Geometry &,
const oops::Variables &,
const util::DateTime &);
67 void read(
const eckit::Configuration &);
69 void write(
const eckit::Configuration &)
const;
74 void serialize(std::vector<double> &)
const;
75 void deserialize(
const std::vector<double> &,
size_t &);
92 void print(std::ostream &)
const;
94 std::shared_ptr<const Geometry>
geom_;
103 #endif // FV3JEDI_STATE_STATE_H_
void read(const eckit::Configuration &)
const util::DateTime & time() const
const oops::Variables & variables() const
size_t serialSize() const
Serialize and deserialize.
static const std::string classname()
void changeResolution(const State &xx)
void write(const eckit::Configuration &) const
std::shared_ptr< const Geometry > geometry() const
std::shared_ptr< const Geometry > geom_
util::DateTime & validTime()
const util::DateTime & validTime() const
void accumul(const double &, const State &)
void serialize(std::vector< double > &) const
Geometry handles geometry for FV3JEDI model.
void print(std::ostream &) const
State & operator=(const State &)
State & operator+=(const Increment &)
void analytic_init(const eckit::Configuration &, const Geometry &)
Configuration files should be formatted as e.g.
const int & toFortran() const
void updateTime(const util::Duration &dt)
State(const Geometry &, const oops::Variables &, const util::DateTime &)
void deserialize(const std::vector< double > &, size_t &)