Cantera  3.1.0a1
Loading...
Searching...
No Matches
C_AnyN Class Reference

Handles any number of species in a reaction, including fractional stoichiometric coefficients, and arbitrary reaction orders. More...

#include <StoichManager.h>

Detailed Description

Handles any number of species in a reaction, including fractional stoichiometric coefficients, and arbitrary reaction orders.

See Stoichiometry

Definition at line 332 of file StoichManager.h.

Public Member Functions

 C_AnyN (size_t rxn, const vector< size_t > &ic, const vector< double > &order_, const vector< double > &stoich_)
 
void multiply (const double *input, double *output) const
 
void incrementSpecies (const double *input, double *output) const
 
void decrementSpecies (const double *input, double *output) const
 
void incrementReaction (const double *input, double *output) const
 
void decrementReaction (const double *input, double *output) const
 
void resizeCoeffs (const map< pair< size_t, size_t >, size_t > &indices)
 
void derivatives (const double *S, const double *R, vector< double > &jac) const
 
void scale (const double *R, double *out, double factor) const
 

Private Attributes

size_t m_n = 0
 Length of the m_ic vector.
 
size_t m_rxn = npos
 ID of the reaction corresponding to this stoichiometric manager.
 
vector< size_t > m_ic
 Vector of species which are involved with this stoichiometric manager calculations.
 
vector< double > m_order
 Reaction orders for the reaction.
 
vector< double > m_stoich
 Stoichiometric coefficients for the reaction, reactant or product side.
 
vector< size_t > m_jc
 Indices in derivative triplet vector.
 
double m_sum_order
 Sum of reaction order vector.
 

Constructor & Destructor Documentation

◆ C_AnyN()

C_AnyN ( size_t  rxn,
const vector< size_t > &  ic,
const vector< double > &  order_,
const vector< double > &  stoich_ 
)
inline

Definition at line 337 of file StoichManager.h.

Member Function Documentation

◆ multiply()

void multiply ( const double *  input,
double *  output 
) const
inline

Definition at line 352 of file StoichManager.h.

◆ incrementSpecies()

void incrementSpecies ( const double *  input,
double *  output 
) const
inline

Definition at line 366 of file StoichManager.h.

◆ decrementSpecies()

void decrementSpecies ( const double *  input,
double *  output 
) const
inline

Definition at line 373 of file StoichManager.h.

◆ incrementReaction()

void incrementReaction ( const double *  input,
double *  output 
) const
inline

Definition at line 380 of file StoichManager.h.

◆ decrementReaction()

void decrementReaction ( const double *  input,
double *  output 
) const
inline

Definition at line 386 of file StoichManager.h.

◆ resizeCoeffs()

void resizeCoeffs ( const map< pair< size_t, size_t >, size_t > &  indices)
inline

Definition at line 392 of file StoichManager.h.

◆ derivatives()

void derivatives ( const double *  S,
const double *  R,
vector< double > &  jac 
) const
inline

Definition at line 404 of file StoichManager.h.

◆ scale()

void scale ( const double *  R,
double *  out,
double  factor 
) const
inline

Definition at line 429 of file StoichManager.h.

Member Data Documentation

◆ m_n

size_t m_n = 0
private

Length of the m_ic vector.

This is the number of species which participate in the reaction order and stoichiometric coefficient vectors for the reactant or product description of the reaction.

Definition at line 441 of file StoichManager.h.

◆ m_rxn

size_t m_rxn = npos
private

ID of the reaction corresponding to this stoichiometric manager.

This is used within the interface to select the array position to read and write to Normally this is associated with the reaction number in an array of quantities indexed by the reaction number, for example, ROP[irxn].

Definition at line 449 of file StoichManager.h.

◆ m_ic

vector<size_t> m_ic
private

Vector of species which are involved with this stoichiometric manager calculations.

This is an integer list of species which participate in either the reaction order matrix or the stoichiometric order matrix for this reaction, m_rxn.

Definition at line 458 of file StoichManager.h.

◆ m_order

vector<double> m_order
private

Reaction orders for the reaction.

This is either for the reactants or products. Length = m_n. Species number, m_ic[n], has a reaction order of m_order[n].

Definition at line 465 of file StoichManager.h.

◆ m_stoich

vector<double> m_stoich
private

Stoichiometric coefficients for the reaction, reactant or product side.

This is either for the reactants or products. Length = m_n. Species number m_ic[m], has a stoichiometric coefficient of m_stoich[n].

Definition at line 472 of file StoichManager.h.

◆ m_jc

vector<size_t> m_jc
private

Indices in derivative triplet vector.

Definition at line 474 of file StoichManager.h.

◆ m_sum_order

double m_sum_order
private

Sum of reaction order vector.

Definition at line 476 of file StoichManager.h.


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