8 #ifndef CT_THIRDBODY_MGR_H
9 #define CT_THIRDBODY_MGR_H
25 warn_deprecated(
"class ThirdBodyMgr",
"To be removed after Cantera 2.2.");
28 void install(
size_t rxnNumber,
const std::map<size_t, doublereal>& enhanced,
29 doublereal dflt=1.0) {
30 m_reaction_index.push_back(rxnNumber);
31 m_concm.push_back(_E(enhanced, dflt));
34 void update(
const vector_fp& conc, doublereal ctot, doublereal* work) {
35 typename std::vector<_E>::const_iterator b = m_concm.begin();
36 for (; b != m_concm.end(); ++b, ++work) {
37 *work = b->update(conc, ctot);
41 void multiply(doublereal* output,
const doublereal* work) {
43 output, m_reaction_index.begin());
47 return m_concm.size();
49 bool contains(
int rxnNumber) {
50 return (find(m_reaction_index.begin(),
51 m_reaction_index.end(), rxnNumber)
52 != m_reaction_index.end());
56 std::vector<size_t> m_reaction_index;
57 std::vector<_E> m_concm;
Various templated functions that carry out common vector operations (see Templated Utility Functions)...
void warn_deprecated(const std::string &method, const std::string &extra)
Print a warning indicating that method is deprecated.
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< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.