TransFlow
0.1.0
A transient pipeline flow simulation library
|
8 #include "composition.hpp"
38 TimeSeries(
const arma::uword nSteps,
const arma::uword dt = 60);
56 const arma::uword nSteps,
57 const arma::uword dt = 60,
58 const std::vector<std::string>& boundarySettings = {
"inlet",
"outlet",
"inlet"});
70 const std::string& filename,
71 const std::vector<std::string>& boundarySettings = {
"inlet",
"outlet",
"inlet"});
84 const std::string& filename,
86 const std::vector<std::string>& boundarySettings = {
"inlet",
"outlet",
"inlet"});
120 const std::string& filename,
121 arma::uword firstRow,
123 const std::vector<std::string>& boundarySettings = {
"inlet",
"outlet",
"inlet"});
155 const arma::mat& data,
156 const std::vector<std::string>& boundarySettings = {
"inlet",
"outlet",
"inlet"});
165 const std::vector<BoundaryConditions>& boundaryConditions);
173 const arma::uword dt,
174 const std::vector<BoundaryConditions>& boundaryConditions);
185 void save(
const std::string& filename);
219 operator std::vector<TimeStep>()
const;
257 Series(
const arma::vec& value,
const bool active):
263 void set(
const arma::vec& value)
270 void set(
const arma::vec& value,
const bool active)
auto & inletPressure()
Get (ref) inlet pressure.
Definition: timeseries.hpp:211
Series m_inletFlow
Inlet flow [kg/s].
Definition: timeseries.hpp:338
const auto & outletFlow() const
Get (const ref) outlet flow.
Definition: timeseries.hpp:198
Series(const arma::vec &value)
Construct from arma::vec. Active by default. Allows implicit conversion from arma::vec to Series.
Definition: timeseries.hpp:247
auto & outletTemperature()
Get (ref) outlet temperature.
Definition: timeseries.hpp:215
Series m_outletTemperature
Outlet temperature [K].
Definition: timeseries.hpp:343
TimeSeries(const arma::uword nSteps, const arma::uword dt=60)
Construct time series with a given number of steps, and a fixed time step.
auto & outletPressure()
Get (ref) outlet pressure.
Definition: timeseries.hpp:214
TimeStep at(std::size_t pos) const
std::vector-like at(i) getter
Series m_inletTemperature
Inlet temperature [K].
Definition: timeseries.hpp:340
std::vector< Composition > m_outletComposition
Outlet composition [fraction].
Definition: timeseries.hpp:346
Definition: pipeline.hpp:16
Definition: timeseries.hpp:229
auto & inletFlow()
Get (ref) inlet flow.
Definition: timeseries.hpp:210
bool m_isActive
If the Series is an active boundary condition.
Definition: timeseries.hpp:329
bool isActive() const
If the Series is an active boundary condition.
Definition: timeseries.hpp:316
void set(const arma::vec &value)
Set new value. Makes it an active boundary condition.
Definition: timeseries.hpp:263
Series(const arma::vec &value, const bool active)
Construct from arma::vec and bool active.
Definition: timeseries.hpp:257
void fill(const double value)
Armadillo-like fill. Fills member vector with value, and sets it active.
Definition: timeseries.hpp:277
void set(const arma::vec &value, const bool active)
Set new value and active status.
Definition: timeseries.hpp:270
const auto & inletFlow() const
Get (const ref) inlet flow.
Definition: timeseries.hpp:195
const auto & outletTemperature() const
Get (const ref) outlet temperature.
Definition: timeseries.hpp:200
void setActive(const bool active)
Set the active/inactive property.
Definition: timeseries.hpp:284
arma::uvec m_timestamps
Timestamps [s].
Definition: timeseries.hpp:336
arma::vec m_vec
The value of the Series.
Definition: timeseries.hpp:332
const auto & outletPressure() const
Get (const ref) outlet pressure.
Definition: timeseries.hpp:199
const arma::vec & vec() const
Get (const ref) member arma::vec m_vec.
Definition: timeseries.hpp:322
The TimeStep class is a subclass of BoundaryConditions with an extra member to store the timestamp of...
Definition: boundaryconditions.hpp:305
auto & timestamps()
Get (ref) timestamps.
Definition: timeseries.hpp:204
arma::vec & vec()
Get (non-const ref) member arma::vec m_vec (private)
Definition: timeseries.hpp:326
auto & outletFlow()
Get (ref) outlet flow.
Definition: timeseries.hpp:213
const auto & inletTemperature() const
Get (const ref) inlet temperature.
Definition: timeseries.hpp:197
Series m_outletFlow
Outlet flow [kg/s].
Definition: timeseries.hpp:341
void setBoundarySettings(const std::vector< std::string > settings)
Set boundary settings via vector of string, or brace-init-list like {"inlet", "outlet",...
const auto & timestamps() const
Get (const ref) timestamps.
Definition: timeseries.hpp:189
const std::vector< Composition > & outletComposition() const
Get (const ref) outlet composition.
Definition: timeseries.hpp:193
bool isActive()
If the Series is an active boundary condition.
Definition: timeseries.hpp:319
void loadFromMatrix(const arma::mat &bc)
Load boundary conditions from matrix (private)
const std::vector< Composition > & inletComposition() const
Get (const ref) inlet composition.
Definition: timeseries.hpp:191
auto & inletTemperature()
Get (ref) inlet temperature.
Definition: timeseries.hpp:212
Series m_outletPressure
Outlet pressure [Pa].
Definition: timeseries.hpp:342
Series & operator=(const arma::vec &value)
Copy assignment operator from arma::vec. Sets it active.
Definition: timeseries.hpp:301
The TimeSeries class is used to store the boundary conditions for several time steps.
Definition: timeseries.hpp:29
The BoundaryConditions class is a container for the boundary conditions at the inlet and outlet of a ...
Definition: boundaryconditions.hpp:27
Series m_inletPressure
Inlet pressure [Pa].
Definition: timeseries.hpp:339
std::vector< Composition > m_inletComposition
Inlet composition [fraction].
Definition: timeseries.hpp:345
Series(const bool active=false)
Default construct. Not active by default.
Definition: timeseries.hpp:238
arma::uword size() const
Get the size of the member arma::vec.
Definition: timeseries.hpp:313
double operator()(const arma::uword i) const
Get element by index.
Definition: timeseries.hpp:310
std::vector< Composition > & inletComposition()
Get (ref) inlet composition.
Definition: timeseries.hpp:206
const auto & inletPressure() const
Get (const ref) inlet pressure.
Definition: timeseries.hpp:196
arma::uword size() const
Get size (number of grid points).
Definition: timeseries.hpp:225
std::vector< Composition > & outletComposition()
Get (ref) outlet composition.
Definition: timeseries.hpp:208