1#ifndef SIMULATION_CLASS_BASE_H
2#define SIMULATION_CLASS_BASE_H
60 const std::valarray<T>&
getField(
const std::string&
key)
const;
63 virtual int run() = 0;
68 std::string m_init_str{
"InitChain"};
69 std::string m_preTs_str{
"PreTimeStepChain"};
70 std::string m_postTs_str{
"PostTimeStepChain"};
71 std::string m_postNonLinIter_str{
"PostNonLinIterChain"};
72 std::string m_output_str{
"OutputChain"};
114 m_simulation_config.addBuildInfo();
117 m_simulation_config.parseCommandLineArguments(
118 argc,
argv, m_simulation_config.getStringParameters(
"ini_folder_path"));
125 m_simulation_config.addBuildInfo();
128 m_simulation_config.loadUserInput(m_simulation_config.getStringParameters(
"ini_folder_path")
135 return m_field_map.at(
key);
141 return m_field_map.at(
key)[
pos];
147 m_simulation_config.loadUserInput(m_simulation_config.getStringParameters(
"ini_folder_path")
154 std::cout <<
key <<
": ";
155 for (
const auto&
val : m_field_map[
key])
157 std::cout <<
val <<
' ';
Concrete implementation of a matrix class representing a Compressed Sparse Rows (CSR) matrix....
Definition CsrMatrix.h:37
CsrSparseMatrix()
Constructor for an empty CsrSparseMatrix object. Leaves all storage arrays empty but sets the flag to...
Definition CsrMatrix.h:94
Definition SimulationClassBase.h:19
virtual void setUserIni(const std::string &user_ini)
Definition SimulationClassBase.h:145
virtual ~SimulationClassBase()=default
void setPostNonLinIterChainStr()
Definition SimulationClassBase.h:55
SimulationClassBase()
Definition SimulationClassBase.h:76
std::map< std::string, std::valarray< T > > m_field_map
Definition SimulationClassBase.h:25
const std::valarray< T > & getField(const std::string &key) const
Definition SimulationClassBase.h:133
const T & getFieldValue(const std::string &key, int pos) const
Definition SimulationClassBase.h:139
void setInitChainStr()
Definition SimulationClassBase.h:52
InputManager m_simulation_config
Definition SimulationClassBase.h:29
int time_step
Definition SimulationClassBase.h:34
void setOutputChainStr()
Definition SimulationClassBase.h:56
T elapsed_time
Definition SimulationClassBase.h:31
int my_rank
Definition SimulationClassBase.h:36
void setPreTimeStepChainStr()
Definition SimulationClassBase.h:53
std::string_view m_current_position
Definition SimulationClassBase.h:27
int world_size
Definition SimulationClassBase.h:37
void printField(const std::string &key)
Definition SimulationClassBase.h:152
void setPostTimeStepChainStr()
Definition SimulationClassBase.h:54