OGS
ChemistryLib::SelfContainedSolverData::SelfContainedSolver Class Referencefinal

Detailed Description

Definition at line 23 of file SelfContainedSolver.h.

#include <SelfContainedSolver.h>

Inheritance diagram for ChemistryLib::SelfContainedSolverData::SelfContainedSolver:
[legend]
Collaboration diagram for ChemistryLib::SelfContainedSolverData::SelfContainedSolver:
[legend]

Public Member Functions

 SelfContainedSolver (MeshLib::Mesh const &mesh, GlobalLinearSolver &linear_solver, Eigen::SparseMatrix< double > stoichiometric_matrix, std::vector< std::unique_ptr< ChemicalReaction > > chemical_reactions)
Eigen::SparseMatrix< double > const * getStoichiometricMatrix () const override
double getKineticPrefactor (std::size_t reaction_id) const override
Public Member Functions inherited from ChemistryLib::ChemicalSolverInterface
 ChemicalSolverInterface (MeshLib::Mesh const &mesh, GlobalLinearSolver &linear_solver_)
std::vector< std::size_t > const & activeElementIDs () const
virtual void initialize ()
virtual void initializeChemicalSystemConcrete (std::vector< double > const &, GlobalIndexType const &, MaterialPropertyLib::Medium const &, ParameterLib::SpatialPosition const &, double const)
virtual void setChemicalSystemConcrete (std::vector< double > const &, GlobalIndexType const &, MaterialPropertyLib::Medium const *, MaterialPropertyLib::VariableArray const &, ParameterLib::SpatialPosition const &, double const, double const)
virtual void setAqueousSolutionsPrevFromDumpFile ()
virtual void executeSpeciationCalculation (double const dt)
virtual double getConcentration (int const, GlobalIndexType const) const
virtual std::vector< std::string > const getComponentList () const
virtual void updateVolumeFractionPostReaction (GlobalIndexType const &, MaterialPropertyLib::Medium const &, ParameterLib::SpatialPosition const &, double const, double const, double const)
virtual void updatePorosityPostReaction (GlobalIndexType const &, MaterialPropertyLib::Medium const &, double &)
virtual void computeSecondaryVariable (std::size_t const, std::vector< GlobalIndexType > const &)
virtual ~ChemicalSolverInterface ()=default

Private Attributes

Eigen::SparseMatrix< double > _stoichiometric_matrix
std::vector< std::unique_ptr< ChemicalReaction > > _chemical_reactions

Additional Inherited Members

Public Attributes inherited from ChemistryLib::ChemicalSolverInterface
std::vector< GlobalIndexTypechemical_system_index_map
MeshLib::Mesh const & _mesh
GlobalLinearSolverlinear_solver

Constructor & Destructor Documentation

◆ SelfContainedSolver()

ChemistryLib::SelfContainedSolverData::SelfContainedSolver::SelfContainedSolver ( MeshLib::Mesh const & mesh,
GlobalLinearSolver & linear_solver,
Eigen::SparseMatrix< double > stoichiometric_matrix,
std::vector< std::unique_ptr< ChemicalReaction > > chemical_reactions )
inline

Definition at line 26 of file SelfContainedSolver.h.

33 _stoichiometric_matrix(stoichiometric_matrix),
34 _chemical_reactions(std::move(chemical_reactions))
35 {
36 }
ChemicalSolverInterface(MeshLib::Mesh const &mesh, GlobalLinearSolver &linear_solver_)
std::vector< std::unique_ptr< ChemicalReaction > > _chemical_reactions

References ChemistryLib::ChemicalSolverInterface::ChemicalSolverInterface(), _chemical_reactions, _stoichiometric_matrix, and ChemistryLib::ChemicalSolverInterface::linear_solver.

Member Function Documentation

◆ getKineticPrefactor()

double ChemistryLib::SelfContainedSolverData::SelfContainedSolver::getKineticPrefactor ( std::size_t reaction_id) const
inlineoverridevirtual

Reimplemented from ChemistryLib::ChemicalSolverInterface.

Definition at line 43 of file SelfContainedSolver.h.

44 {
45 return _chemical_reactions[reaction_id]->getKineticPrefactor();
46 }

References _chemical_reactions.

◆ getStoichiometricMatrix()

Eigen::SparseMatrix< double > const * ChemistryLib::SelfContainedSolverData::SelfContainedSolver::getStoichiometricMatrix ( ) const
inlineoverridevirtual

Reimplemented from ChemistryLib::ChemicalSolverInterface.

Definition at line 38 of file SelfContainedSolver.h.

39 {
41 }

References _stoichiometric_matrix.

Member Data Documentation

◆ _chemical_reactions

std::vector<std::unique_ptr<ChemicalReaction> > ChemistryLib::SelfContainedSolverData::SelfContainedSolver::_chemical_reactions
private

Definition at line 50 of file SelfContainedSolver.h.

Referenced by SelfContainedSolver(), and getKineticPrefactor().

◆ _stoichiometric_matrix

Eigen::SparseMatrix<double> ChemistryLib::SelfContainedSolverData::SelfContainedSolver::_stoichiometric_matrix
private

Definition at line 49 of file SelfContainedSolver.h.

Referenced by SelfContainedSolver(), and getStoichiometricMatrix().


The documentation for this class was generated from the following file: