netxsimdg
|
Public Member Functions | |
void | setFilenamePrefix (const std::string &filePrefix) override |
Sets the output file name. | |
void | outputState (const ModelMetadata &meta) override |
Outputs the passed ModelState. | |
std::string | getName () const override |
Returns the name of the component. | |
ModelState | getState () const override |
Returns a ModelState from this component. | |
ModelState | getState (const OutputLevel &) const override |
Returns a ModelState from this component at a specified level. | |
Public Member Functions inherited from Nextsim::IDiagnosticOutput | |
void | setData (const ModelState::DataMap &state) |
Set the initial data of the component from the passed ModelState. | |
Public Member Functions inherited from Nextsim::ModelComponent | |
virtual ModelState | getStateRecursive (const OutputSpec &os) const |
Returns the state of the ModelComponent and any ModelComponents it depends on. | |
virtual std::unordered_set< std::string > | hFields () const |
Returns the names of all Type::H ModelArrays defined in this component. | |
virtual std::unordered_set< std::string > | uFields () const |
Returns the names of all Type::U ModelArrays defined in this component. | |
virtual std::unordered_set< std::string > | vFields () const |
Returns the names of all Type::V ModelArrays defined in this component. | |
virtual std::unordered_set< std::string > | zFields () const |
Returns the names of all Type::Z ModelArrays defined in this component. | |
Additional Inherited Members | |
Public Types inherited from Nextsim::ModelComponent | |
enum class | ProtectedArray { H_ICE , C_ICE , H_SNOW , T_ICE , T_AIR , DEW_2M , P_AIR , MIXRAT , SW_IN , LW_IN , MLD , SNOW , SSS , SST , EXT_SSS , EXT_SST , EVAP_MINUS_PRECIP , ML_BULK_CP , TF , WIND_SPEED , WIND_U , WIND_V , HTRUE_ICE , HTRUE_SNOW , OCEAN_U , OCEAN_V , ICE_U , ICE_V , SLAB_SST , SLAB_SSS , SLAB_QDW , SLAB_FDW , COUNT } |
enum class | SharedArray { H_ICE = SharedArrayOffset , C_ICE , H_SNOW , T_ICE , Q_IA , Q_IC , Q_IO , Q_OW , DQIA_DT , Q_PEN_SW , HSNOW_MELT , SUBLIM , DELTA_HICE , DELTA_CICE , NEW_ICE , COUNT } |
typedef Logged::level | OutputLevel |
typedef std::function< void(size_t, const TimestepTime &)> | IteratedFn |
Static Public Member Functions inherited from Nextsim::ModelComponent | |
static void | setAllModuleData (const ModelState &stateIn) |
static ModelState | getAllModuleState () |
static void | unregisterAllModules () |
static void | getAllFieldNames (std::unordered_set< std::string > &uF, std::unordered_set< std::string > &vF, std::unordered_set< std::string > &zF) |
static void | registerExternalSharedArray (SharedArray type, ModelArray *addr) |
Registers a ModelArray into a SharedArray slot from outside any ModelComponent object. Intended for testing and debugging. | |
static void | registerExternalProtectedArray (ProtectedArray type, ModelArray *addr) |
Registers a ModelArray into a ProtectedArray slot from outside any ModelComponent object. Intended for testing and debugging. | |
static const MARBackingStore & | getSharedArray () |
Returns a const reference to the store for SharedArray fields. | |
static const MARConstBackingStore & | getProtectedArray () |
Returns a const reference to the store for ProtectedArray fields. | |
Static Public Attributes inherited from Nextsim::ModelComponent | |
static const size_t | SharedArrayOffset = 0 |
Protected Member Functions inherited from Nextsim::ModelComponent | |
void | registerModule () |
Static Protected Member Functions inherited from Nextsim::ModelComponent | |
static void | registerSharedArray (SharedArray type, ModelArray *addr) |
static void | registerProtectedArray (ProtectedArray type, const ModelArray *addr) |
static void | overElements (IteratedFn fn, const TimestepTime &tst) |
static void | setOceanMask (const ModelArray &mask) |
Sets the model-wide land-ocean mask (for HField arrays). | |
static void | noLandMask () |
static ModelArray | mask (const ModelArray &data) |
Returns a copy of the provided ModelArray, masked according to the land-ocean mask. | |
static const ModelArray & | oceanMask () |
Returns the ocean mask. | |
Protected Attributes inherited from Nextsim::IDiagnosticOutput | |
const std::map< std::string, ProtectedArray > | protectedArrayNames |
const std::map< std::string, SharedArray > | sharedArrayNames |
const std::map< std::string, std::string > | protectedExternalNames |
const std::map< std::string, std::string > | sharedExternalNames |
Static Protected Attributes inherited from Nextsim::ModelComponent | |
static ModelArray * | p_oceanMaskH = nullptr |
Definition at line 15 of file SimpleOutput.hpp.
|
inlineoverridevirtual |
Returns the name of the component.
Implements Nextsim::ModelComponent.
Definition at line 24 of file SimpleOutput.hpp.
|
inlineoverridevirtual |
Returns a ModelState from this component.
The ModelState is map between field names and ModelArray data arrays. The intention is to merge together different ModelSatates to produce a combined state. The returned ModelState will include the states of any subsidiary components held by the object. This is the default level of output and should include all and only fields to be placed in the restart file.
Implements Nextsim::ModelComponent.
Definition at line 26 of file SimpleOutput.hpp.
|
inlineoverridevirtual |
Returns a ModelState from this component at a specified level.
See the zero argument version for more details. The output levels reuse those defined in the Logged class. The default level is NOTICE, and only levels such as INFO, DEBUG and TRACE should be used, and should provide extra diagnostic fields.
Implements Nextsim::ModelComponent.
Definition at line 27 of file SimpleOutput.hpp.
|
overridevirtual |
Outputs the passed ModelState.
state | The model state to be written out. |
meta | The model metadata for the the given state. |
Implements Nextsim::IDiagnosticOutput.
Definition at line 18 of file SimpleOutput.cpp.
|
inlineoverridevirtual |
Sets the output file name.
fileName | The file name to be set. |
Implements Nextsim::IDiagnosticOutput.
Definition at line 19 of file SimpleOutput.hpp.