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 & getElementIDs ()
 
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

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 getKineticPrefactor().

◆ _stoichiometric_matrix

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

Definition at line 49 of file SelfContainedSolver.h.

Referenced by getStoichiometricMatrix().


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