5 #ifndef CT_THIRDBODYCALC_H
6 #define CT_THIRDBODYCALC_H
19 void install(
size_t rxnNumber,
const std::map<size_t, double>& enhanced,
24 m_species.push_back(std::vector<size_t>());
26 for (std::map<size_t, double>::const_iterator iter = enhanced.begin();
27 iter != enhanced.end();
30 assert(iter->first !=
npos);
32 m_eff.back().push_back(iter->second - dflt);
36 void update(
const vector_fp& conc,
double ctot,
double* work) {
37 for (
size_t i = 0; i <
m_species.size(); i++) {
39 for (
size_t j = 0; j <
m_species[i].size(); j++) {
46 void multiply(
double* output,
const double* work) {
vector_fp m_default
The default efficiency for each reaction.
Various templated functions that carry out common vector operations (see Templated Utility Functions)...
const size_t npos
index returned by functions to indicate "no position"
Calculate and apply third-body effects on reaction rates, including non- unity third-body efficiencie...
void scatter_mult(InputIter mult_begin, InputIter mult_end, RandAccessIter data, IndexIter index)
Multiply selected elements in an array by a contiguous sequence of multipliers.
std::vector< std::vector< size_t > > m_species
m_species[i][j] is the index of the j-th species in reaction i.
std::vector< vector_fp > m_eff
m_eff[i][j] is the efficiency of the j-th species in reaction i.
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
std::vector< size_t > m_reaction_index
Indices of third-body reactions within the full reaction array.