MoCSI API Reference
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
TemperatureSaverIterationsTool< T > Class Template Reference

Helper module to store the updated temperature from the last inner iteration. More...

#include <TemperatureSaverIterationsTool.h>

Inheritance diagram for TemperatureSaverIterationsTool< T >:
Inheritance graph
Collaboration diagram for TemperatureSaverIterationsTool< T >:
Collaboration graph

Public Member Functions

 TemperatureSaverIterationsTool (SimulationClassBase< T > *sim)
 
bool setup (std::vector< std::shared_ptr< GenericSubmodule< T > > > all_submodules) override
 
bool exec (std::string_view param) override
 
bool init () override
 
bool preTimeStep () override
 
bool postTimeStep () override
 
bool output () override
 
std::vector< std::string > getChainInsertion () const override
 
std::string_view getNameLocal () const override
 
- Public Member Functions inherited from GenericManagingModule< T >
 GenericManagingModule ()
 Constructor without arguments. Will be employed when using the static modules registry.
 
virtual ~GenericManagingModule ()=default
 
 GenericManagingModule (SimulationClassBase< T > *l_sim)
 Constructor to be preferably used when a module is created during runtime.
 
virtual bool postNonLinIter ()
 
virtual std::vector< std::string > getDependencies () const
 
virtual void setSubmoduleList (std::vector< std::string > submodules)
 
std::vector< std::string > getSubmoduleList () const
 
void setSimPointer (SimulationClassBase< T > *sim)
 Setter function for the sim pointer. As the module is usually registered during static initialization when the sim class is not yet existing, this function is needed to set the pointer.
 
void setSubmodules (std::vector< std::shared_ptr< GenericSubmodule< T > > > all_submodules)
 Sets all the submodules of this module into their corresponding chains. Also sets their field-pointers to this->module_field as a way to communicate between submodules.
 
void writeToGlobalIniContent (std::ofstream &global_stream)
 Function that writes the local ini file contents to the global ini file stream. "Tags" the keys with the name of the module in the format "module_name$key".
 
void overwriteLocalIniContent (const std::unordered_map< std::string, std::any > &global_ini_content)
 Writes the (already trimmed to the local content) data from the global ini file to the local ini file. This only overwrites the internal data and not the file contents itself.
 

Static Public Member Functions

static std::shared_ptr< GenericManagingModule< T > > createMethode (SimulationClassBase< T > *sim)
 
static std::string getName ()
 

Additional Inherited Members

- Protected Attributes inherited from GenericManagingModule< T >
SimulationClassBase< T > * sim {}
 
std::shared_ptr< std::valarray< T > > module_field
 
ChainManager< GenericSubmodule< T > > sub_module_chain
 
std::vector< std::string > m_generic_submodules
 
InputManager ini_file_data
 
bool in_snapshot {false}
 
bool in_output {false}
 
char field_id
 

Detailed Description

template<typename T>
class TemperatureSaverIterationsTool< T >

Helper module to store the updated temperature from the last inner iteration.

This managing module ensures that the temperature values from the last inner iteration are saved before the top boundary condition is recalculated. It acts as an intermediary to maintain the correct order of operations in the simulation framework.

Key Features:

Template Parameters
TNumeric type used in the simulation (e.g., float, double)
Note
This module does not modify the temperature itself, but stores it temporarily to guarantee proper sequencing of temperature updates and boundary condition calculations.

Constructor & Destructor Documentation

◆ TemperatureSaverIterationsTool()

Member Function Documentation

◆ createMethode()

template<typename T >
static std::shared_ptr< GenericManagingModule< T > > TemperatureSaverIterationsTool< T >::createMethode ( SimulationClassBase< T > *  sim)
inlinestatic

◆ exec()

template<typename T >
bool TemperatureSaverIterationsTool< T >::exec ( std::string_view  param)
overridevirtual

◆ getChainInsertion()

template<typename T >
std::vector< std::string > TemperatureSaverIterationsTool< T >::getChainInsertion ( ) const
inlineoverridevirtual

Reimplemented from GenericManagingModule< T >.

◆ getName()

template<typename T >
static std::string TemperatureSaverIterationsTool< T >::getName ( )
inlinestatic

◆ getNameLocal()

template<typename T >
std::string_view TemperatureSaverIterationsTool< T >::getNameLocal ( ) const
inlineoverridevirtual

◆ init()

template<typename T >
bool TemperatureSaverIterationsTool< T >::init ( )
inlineoverridevirtual

Reimplemented from GenericManagingModule< T >.

◆ output()

template<typename T >
bool TemperatureSaverIterationsTool< T >::output ( )
inlineoverridevirtual

Reimplemented from GenericManagingModule< T >.

◆ postTimeStep()

template<typename T >
bool TemperatureSaverIterationsTool< T >::postTimeStep ( )
inlineoverridevirtual

Reimplemented from GenericManagingModule< T >.

◆ preTimeStep()

template<typename T >
bool TemperatureSaverIterationsTool< T >::preTimeStep ( )
overridevirtual

Reimplemented from GenericManagingModule< T >.

◆ setup()

template<typename T >
bool TemperatureSaverIterationsTool< T >::setup ( std::vector< std::shared_ptr< GenericSubmodule< T > > >  all_submodules)
overridevirtual

Reimplemented from GenericManagingModule< T >.


The documentation for this class was generated from the following file: