TransportSolver.hpp
135 auto a() -> VectorStridedRef { return Vector::Map(m_data.data() + 3, size() - 1, Eigen::InnerStride<3>()); }
137 auto a() const -> VectorConstRef { return Vector::Map(m_data.data() + 3, size() - 1, Eigen::InnerStride<3>()); }
139 auto b() -> VectorStridedRef { return Vector::Map(m_data.data() + 1, size(), Eigen::InnerStride<3>()); }
141 auto b() const -> VectorConstRef { return Vector::Map(m_data.data() + 1, size(), Eigen::InnerStride<3>()); }
143 auto c() -> VectorStridedRef { return Vector::Map(m_data.data() + 2, size() - 1, Eigen::InnerStride<3>()); }
145 auto c() const -> VectorConstRef { return Vector::Map(m_data.data() + 2, size() - 1, Eigen::InnerStride<3>()); }
A class for representing a list of strings with special constructors.
Definition: StringList.hpp:28
auto mesh() const -> const Mesh &
Return the mesh.
Definition: TransportSolver.hpp:236
auto index(const T &value, const std::vector< T > &values) -> Index
Find the index of a value in a container of values.
Definition: SetUtils.hxx:21
Definition: TransportSolver.hpp:59
A class to represent a system and its attributes and properties.
Definition: ChemicalSystem.hpp:38
A class that defines a Tridiagonal Matrix used on TransportSolver.
Definition: TransportSolver.hpp:119
Provides a computational representation of the state of a multiphase chemical system.
Definition: ChemicalState.hpp:61
auto setVelocity(double val) -> void
Set the velocity for the transport problem.
Definition: TransportSolver.hpp:222
auto solve(VectorRef x, VectorConstRef b) const -> void
Solve a linear system Ax = b with LU decomposition.
Definition: TransportSolver.cpp:120
A class for solving advection-diffusion problem.
Definition: TransportSolver.hpp:212
Use this class for solving reactive transport problems.
Definition: TransportSolver.hpp:282
The namespace containing all components of the Reaktoro library.
Definition: ChemicalScalar.hpp:24
A solver class for solving chemical equilibrium calculations.
Definition: EquilibriumSolver.hpp:38
ReactiveTransportSolver(const ChemicalSystem &system)
Construct a default ReactiveTransportSolver instance.
Definition: TransportSolver.cpp:335
A type used to output sequence of chemical states to a file or terminal.
Definition: ChemicalOutput.hpp:36
auto setDiffusionCoeff(double val) -> void
Set the diffusion coefficient for the transport problem.
Definition: TransportSolver.hpp:226
auto setTimeStep(double val) -> void
Set the time step for the numerical solution of the transport problem.
Definition: TransportSolver.hpp:233
auto setMesh(const Mesh &mesh) -> void
Set the mesh for the numerical solution of the transport problem.
Definition: TransportSolver.hpp:218
TransportSolver()
Construct a default TransportSolver instance.
Definition: TransportSolver.cpp:194
auto initialize() -> void
Initialize the transport solver before method step is executed.
Definition: TransportSolver.cpp:249
Eigen::Ref< Eigen::VectorXd > VectorRef
< Alias to Eigen type VectorXd.
Definition: Matrix.hpp:29
Eigen::Ref< Vector, 0, Eigen::InnerStride<> > VectorStridedRef
< Alias to Eigen type Ref<VectorXd>.
Definition: Matrix.hpp:30
auto step(VectorRef u, VectorConstRef q) -> void
Step the transport solver.
Definition: TransportSolver.cpp:277
auto setBoundaryValue(double val) -> void
Set the value of the variable on the boundary.
Definition: TransportSolver.hpp:230
Eigen::Ref< const Eigen::VectorXd > VectorConstRef
< Alias to Eigen type Ref<VectorXd>.
Definition: Matrix.hpp:31
auto factorize() -> void
Factorize the tridiagonal matrix to help with linear system A x = b.
Definition: TransportSolver.cpp:100