Class IDynamics

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class IDynamics : public Nextsim::ModelComponent

Subclassed by Nextsim::BBMDynamics, Nextsim::DummyDynamics, Nextsim::FreeDriftDynamics, Nextsim::MEVPDynamics

Public Functions

inline IDynamics()
inline IDynamics(bool usesDamageIn)
virtual ~IDynamics() = default
inline virtual ModelState getStatePrognostic() const override

Returns the state of the ModelComponent.

Returns the state of the ModelComponent and any ModelComponents it depends on.

The state returned by this function contains all the data necessary to restart this component and all components that it calls.

inline virtual ModelState getStateDiagnostic() const override

Returns all data and configuration from this component.

The state returned by this function contains all available data in this component and all components that it calls.

inline virtual std::string getName() const override

Returns the name of the component.

inline virtual void setData(const ModelState::DataMap &ms) override

Set the initial data of the component from the passed ModelState.

Parameters:

state – The ModelState containing the data to be set.

virtual void update(const TimestepTime &tst) = 0
inline virtual bool usesDamage() const

Returns whether the dynamics implementation uses the damage field.

inline virtual void advectField(FloatType timestep, ModelArray &field, FloatType lowerLimit = -std::numeric_limits<FloatType>::infinity(), FloatType upperLimit = std::numeric_limits<FloatType>::infinity())
virtual void prepareAdvection() = 0

Protected Static Functions

static inline bool checkSpherical(const ModelState::DataMap &ms)