7#include "include/Sfx_DefineTypes.h"
9#include "include/Sfx_Singleton.hpp"
43 m_simProp.m_CalculFFSchemeName = aCalculFFSchemeName;
51 m_simProp.m_performMeasurement = measurement;
59 m_simProp.m_numberMeasuremenst = aNumofMeasurements;
148 {
m_simProp.m_physConfigClass = aPhysicalConfig; }
256 std::string
toString() const noexcept {
return std::string{
"" }; }
Bean that represents a simulation in the framework. Many of the attributes of the simulation bean are...
Definition Sfx_Simulation.h:22
std::string getNumericalMethod() const noexcept
Getter.
Definition Sfx_Simulation.h:196
std::string getDataStore() const noexcept
Getter.
Definition Sfx_Simulation.h:116
void setPhysicalMeasurementClass(std::string aPhysicalMeasureClass)
Set class name.
Definition Sfx_Simulation.h:126
float64 getSimulationStartTime() const noexcept
Getter.
Definition Sfx_Simulation.h:201
std::string getCalculFFSchemeName() const noexcept
Numerical algorithm for the current simulation.
Definition Sfx_Simulation.h:33
void setSimulationStartTime(float64 aStartTime) noexcept
Use this method to specify the time at the start of the simulation.
Definition Sfx_Simulation.h:206
Simulation::SimProp loadPropertyFile(const std::filesystem::path &aFilePropPath)
load property file of the simulation
Definition Sfx_Simulation.cpp:16
void updateTime() noexcept
Use this method to set the time during any point during the simulation.
Definition Sfx_Simulation.h:248
bool doFinalReport() const noexcept
Definition Sfx_Simulation.h:79
uint32 getNumTimeStep() noexcept
Return the number of time step.
Definition Sfx_Simulation.h:230
void setPhysicalConfigureClass(const std::string &aConfClass) noexcept
Set configuration class name.
Definition Sfx_Simulation.h:90
struct Sfx::Simulation::SimProp m_simProp
Simulation(const Simulation &aOther)=delete
Disable copy ctor.
std::string getBoundaryCnd() noexcept
boundary condition name
Definition Sfx_Simulation.h:184
Simulation & operator=(const Simulation &aOther)=delete
Disable assign ctor.
void setDataStoreFile(std::string aDataStoreFile) noexcept
Use this method to specify the DataStoreFile.
Definition Sfx_Simulation.h:73
void setBoundaryCnd(std::string aBoundaryCnd) noexcept
Use this method to specify the Boundary Condition Type.
Definition Sfx_Simulation.h:179
void setSimulationTime(float64 aTime) noexcept
Use this method to specify the time during any point during the simulation.
Definition Sfx_Simulation.h:215
std::vector< float64 > ArrayType
Alias (array type)
Definition Sfx_Simulation.h:26
void setCalculFFSchemeName(const std::string &aCalculFFSchemeName) noexcept
Set Numerical flux pointer to function.
Definition Sfx_Simulation.h:41
void setNumberMeasurements(uint32 aNumofMeasurements) noexcept
Set number of measurements.
Definition Sfx_Simulation.h:57
void setDataStore(const std::string &dataStore) noexcept
Use this method to specify the DataStore.
Definition Sfx_Simulation.h:65
const float64 getSimulationTimeStep() const noexcept
Use this method to get the interval which is usually a timestep.
Definition Sfx_Simulation.h:244
const std::string getDataStoreFile() const noexcept
Getter.
Definition Sfx_Simulation.h:121
void setPhysicalSystemClass(std::string aPhysicalSystemClass) noexcept
Use this method to specify the PhysicalSystemClass.
Definition Sfx_Simulation.h:170
void setPhysicalConfigurationClass(std::string aPhysicalConfig) noexcept
Use this method to specify the PhysicalConfigurationClass.
Definition Sfx_Simulation.h:147
void setPerformMeasurement(bool measurement) noexcept
Flag to set if measure to be taken.
Definition Sfx_Simulation.h:49
Simulation()=default
prevent client from using it
std::string toString() const noexcept
string representation of the object
Definition Sfx_Simulation.h:256
std::string getPhysicalMeasurementClass() const noexcept
Use this method to get the PhysicalMeasurementClass.
Definition Sfx_Simulation.h:131
std::string getFinalReportClass() const noexcept
Get the class for the final report.
Definition Sfx_Simulation.h:165
void setPhysicalAlgorithmClass(std::string aPhysicalAlgo) noexcept
Use this method to specify the PhysicalAlgorithmClass.
Definition Sfx_Simulation.h:160
~Simulation()=default
Dtor.
void setPhysicalAlgoClass(const std::string &aAlgoClass) noexcept
Set algorithm class name.
Definition Sfx_Simulation.h:98
void setNumericalMethod(std::string aNumethod) noexcept
Use this method to specify the Numerical Method.
Definition Sfx_Simulation.h:188
void setDoFinalReport(bool doFinalReport) noexcept
Definition Sfx_Simulation.h:76
void setParamsFileName(std::string aPropFileName)
Set file name.
Definition Sfx_Simulation.h:271
void setFinalReportClass(const std::string &finalReportClass) noexcept
Use this method to define a class that performs a summary report of the simulation.
Definition Sfx_Simulation.h:85
uint32 getNumberMeasurements() const noexcept
Getter.
Definition Sfx_Simulation.h:111
std::string getPhysicalConfigurationClass() const noexcept
Use this method to get the PhysicalConfigurationClass.
Definition Sfx_Simulation.h:139
std::string getInitialCnd() const noexcept
Initial conditon name.
Definition Sfx_Simulation.h:175
void setSimulationTimeStep(const float64 aTimeStep) noexcept
Use this method to specify the timestep interval to be used to calculate the running time.
Definition Sfx_Simulation.h:235
float64 getSimulationTime() const noexcept
Return current time of the simulation.
Definition Sfx_Simulation.h:220
std::string getPhysicalAlgorithmClass() const noexcept
Get the PhysicalAlgorithmClass name.
Definition Sfx_Simulation.h:153
bool getPerformMeasurement() const noexcept
Getter.
Definition Sfx_Simulation.h:106
void setNumTimeStep(uint32 aNumTimeStep) noexcept
Set the number of time-step.
Definition Sfx_Simulation.h:225
std::string getParamsFileName() const
Getter.
Definition Sfx_Simulation.h:276
Property loaded at initialization (from file, user) Struct that hold parameters for the current simul...
Definition Sfx_Simulation.h:289
bool m_performMeasurement
Definition Sfx_Simulation.h:319
std::string m_physAlgoClass
Definition Sfx_Simulation.h:327
bool m_doFinalRep
Definition Sfx_Simulation.h:318
std::string m_numericalMethod
Definition Sfx_Simulation.h:329
int32 m_NbIterations
Definition Sfx_Simulation.h:331
float64 m_simTime
Definition Sfx_Simulation.h:334
std::string m_phySystemClass
Definition Sfx_Simulation.h:328
std::string m_dataStoreFile
Definition Sfx_Simulation.h:324
std::string m_propFileName
Definition Sfx_Simulation.h:322
float32 m_lastTime
Definition Sfx_Simulation.h:335
uint32 m_numberMeasuremenst
Definition Sfx_Simulation.h:320
std::string m_boundaryCnd
Definition Sfx_Simulation.h:330
float64 m_maxTimeStep
Definition Sfx_Simulation.h:338
std::string m_physMeasurementClass
Definition Sfx_Simulation.h:325
std::string m_physConfigClass
Definition Sfx_Simulation.h:326
SimProp()
default ctor (phase we overwrite these at loading)
Definition Sfx_Simulation.h:293
float64 m_stopTime
Definition Sfx_Simulation.h:333
std::string m_dataStoreName
Definition Sfx_Simulation.h:323
float64 m_startTime
Definition Sfx_Simulation.h:332
uint32 m_numTimeStep
Definition Sfx_Simulation.h:337
std::string m_CalculFFSchemeName
Definition Sfx_Simulation.h:321
float64 m_timeStep
Definition Sfx_Simulation.h:336