8#ifndef PROGNOSTICDATA_HPP
9#define PROGNOSTICDATA_HPP
13#include "include/IAtmosphereBoundary.hpp"
15#include "include/IOceanBoundary.hpp"
16#include "include/IceGrowth.hpp"
33 std::string
getName()
const override {
return "PrognosticData"; };
35 void setData(
const ModelState::DataMap& ms)
override;
40 static HelpMap& getHelpText(HelpMap& map,
bool getAll);
41 static HelpMap& getHelpRecursive(HelpMap& map,
bool getAll);
43 std::unordered_set<std::string>
hFields()
const override
45 return {
"h_ice",
"c_cice",
"h_snow" };
47 std::unordered_set<std::string>
uFields()
const override {
return {
"u" }; }
48 std::unordered_set<std::string>
vFields()
const override {
return {
"v" }; }
49 std::unordered_set<std::string>
zFields()
const override {
return {
"tice" }; }
77 IAtmosphereBoundary* pAtmBdy;
78 IOceanBoundary* pOcnBdy;
82 void updatePrognosticFields();
const HField & iceThickness()
Returns a const reference to the cell-averaged ice thickness field.
ModelState getStateRecursive(const OutputSpec &os) const override
Returns the state of the ModelComponent and any ModelComponents it depends on.
void update(const TimestepTime &tsTime)
Updates the state of the prognostic data for this timestep.
const HField & iceConcentration()
Returns a reference to the ice concentration field.
void setData(const ModelState::DataMap &ms) override
Set the initial data of the component from the passed ModelState.
std::unordered_set< std::string > vFields() const override
Returns the names of all Type::V ModelArrays defined in this component.
const HField & snowThickness()
Returns a const reference to the cell-averaged snow thickness field.
std::unordered_set< std::string > zFields() const override
Returns the names of all Type::Z ModelArrays defined in this component.
std::unordered_set< std::string > hFields() const override
Returns the names of all Type::H ModelArrays defined in this component.
std::unordered_set< std::string > uFields() const override
Returns the names of all Type::U ModelArrays defined in this component.
std::string getName() const override
Returns the name of the component.
const ZField & iceTemperature()
Returns a const reference to the (three dimensional) ice temperature field.
void configure() override
The configuration function.
ModelState getState() const override
Returns a ModelState from this component.
ModelState getState(const OutputLevel &lvl) const override
Returns a ModelState from this component at a specified level.