ThirdBodyCalc.h Source File#
ThirdBodyCalc.h
Go to the documentation of this file.
Calculate and apply third-body effects on reaction rates, including non- unity third-body efficiencie...
Definition ThirdBodyCalc.h:20
void scaleM(const double *in, double *out, const double *concm, double factor) const
Scale entries involving third-body collider in rate expression by third-body concentration and factor...
Definition ThirdBodyCalc.h:112
Eigen::SparseMatrix< double > m_multipliers
Sparse derivative multiplier matrix.
Definition ThirdBodyCalc.h:152
vector< Eigen::Triplet< double > > m_efficiencyList
Sparse efficiency matrix (compensated for defaults) Each triplet corresponds to (reaction index,...
Definition ThirdBodyCalc.h:149
vector< vector< size_t > > m_species
m_species[i][j] is the index of the j-th species in reaction i.
Definition ThirdBodyCalc.h:139
vector< vector< double > > m_eff
m_eff[i][j] is the efficiency of the j-th species in reaction i.
Definition ThirdBodyCalc.h:142
bool empty() const
Return boolean indicating whether ThirdBodyCalc is empty.
Definition ThirdBodyCalc.h:122
void install(size_t rxnNumber, const map< size_t, double > &efficiencies, double default_efficiency, bool mass_action)
Install reaction that uses third-body effects in ThirdBodyCalc manager.
Definition ThirdBodyCalc.h:23
vector< size_t > m_no_mass_action_index
Indices within m_reaction_index of reactions that consider third-body effects in the rate expression.
Definition ThirdBodyCalc.h:136
void multiply(double *output, const double *concm)
Multiply output with effective third-body concentration.
Definition ThirdBodyCalc.h:86
void update(const vector< double > &conc, double ctot, double *concm) const
Update third-body concentrations in full vector.
Definition ThirdBodyCalc.h:75
Eigen::SparseMatrix< double > derivatives(const double *product)
Calculate derivatives with respect to species concentrations.
Definition ThirdBodyCalc.h:97
void scale(const double *in, double *out, double factor) const
Scale entries involving third-body collider in law of mass action by factor.
Definition ThirdBodyCalc.h:103
vector< size_t > m_mass_action_index
Indices within m_reaction_index of reactions that consider third-body effects in the law of mass acti...
Definition ThirdBodyCalc.h:132
void resizeCoeffs(size_t nSpc, size_t nRxn)
Resize the sparse coefficient matrix.
Definition ThirdBodyCalc.h:47
vector< size_t > m_reaction_index
Indices of reactions that use third-bodies within vector of concentrations.
Definition ThirdBodyCalc.h:128
This file contains definitions of constants, types and terms that are used in internal routines and a...
Generated by