BioCMAMC-ST
simulation_parameters.hpp
1#ifndef __SIMULATION_PARAMETERS_HPP__
2#define __SIMULATION_PARAMETERS_HPP__
3
4#include <cstddef>
5#include <cstdint>
6#include <optional>
7#include <ostream>
8#include <string>
9#include <vector>
10
11
12namespace Core
13{
14
24 {
25
27 double final_time;
28 double delta_time;
29 uint64_t number_particle;
30 int32_t n_thread;
32 bool recursive;
34 bool serde;
35 std::string initialiser_path;
36 std::string model_name;
37 std::string results_file_name;
38 std::string cma_case_path;
39 std::optional<std::string> serde_file;
40
48 };
49
50 std::ostream& operator<<(std::ostream& stream, const UserControlParameters& params);
51
53 {
54 double d_t;
55 size_t n_species;
56 std::vector<std::string> flow_files;
58 bool verbose;
61 bool is_two_phase_flow = true;
63 std::string results_file_name;
67 double final_time;
69 static SimulationParameters init(const UserControlParameters& user_params);
70 };
71
72} // namespace Core
73#endif //__SIMULATION_PARAMETERS_HPP__
Core component to perform simulation.
Definition data_exporter.hpp:18
std::ostream & operator<<(std::ostream &stream, const UserControlParameters &params)
Definition simulation_parameters.cpp:51
Definition simulation_parameters.hpp:53
static SimulationParameters m_default()
Definition simulation_parameters.cpp:7
double d_t
Definition simulation_parameters.hpp:54
size_t n_species
Definition simulation_parameters.hpp:55
uint32_t number_exported_result
Definition simulation_parameters.hpp:65
bool verbose
Definition simulation_parameters.hpp:58
bool is_two_phase_flow
Definition simulation_parameters.hpp:61
size_t n_compartments
Definition simulation_parameters.hpp:60
std::vector< std::string > flow_files
Definition simulation_parameters.hpp:56
size_t n_different_maps
Definition simulation_parameters.hpp:59
std::string results_file_name
Definition simulation_parameters.hpp:63
static SimulationParameters init(const UserControlParameters &user_params)
Definition simulation_parameters.cpp:20
size_t n_per_flowmap
Definition simulation_parameters.hpp:62
double final_time
Definition simulation_parameters.hpp:67
double biomass_initial_concentration
Definition simulation_parameters.hpp:66
uint64_t number_particle
Definition simulation_parameters.hpp:57
double t_per_flow_map
Definition simulation_parameters.hpp:64
A structure to hold user-defined control parameters for simulation settings.
Definition simulation_parameters.hpp:24
bool serde
Flag to enable serialization/deserialization.
Definition simulation_parameters.hpp:34
std::string results_file_name
Name of the file where results are saved.
Definition simulation_parameters.hpp:37
std::string initialiser_path
Path to the initialiser configuration file.
Definition simulation_parameters.hpp:35
int32_t n_thread
Number of threads to use for simulation.
Definition simulation_parameters.hpp:30
double delta_time
Time step for the simulation (in seconds).
Definition simulation_parameters.hpp:28
static UserControlParameters m_default()
Provides default settings for the UserControlParameters structure.
Definition simulation_parameters.cpp:33
std::string model_name
Name of the simulation model.
Definition simulation_parameters.hpp:36
bool recursive
Flag to enable recursive processing.
Definition simulation_parameters.hpp:32
uint32_t number_exported_result
Number of results to be exported.
Definition simulation_parameters.hpp:31
double biomass_initial_concentration
Initial concentration of biomass.
Definition simulation_parameters.hpp:26
uint64_t number_particle
Number of particles in the simulation.
Definition simulation_parameters.hpp:29
double final_time
Final time for the simulation (in seconds).
Definition simulation_parameters.hpp:27
bool force_override
Flag to allow overwriting of existing results.
Definition simulation_parameters.hpp:33
std::optional< std::string > serde_file
Optional file path for serialized data.
Definition simulation_parameters.hpp:39
std::string cma_case_path
Path to the CMA case file.
Definition simulation_parameters.hpp:38