Cantera  3.1.0a1
IdealGasReactor.h
Go to the documentation of this file.
1 //! @file IdealGasReactor.h
2 
3 // This file is part of Cantera. See License.txt in the top-level directory or
4 // at https://cantera.org/license.txt for license and copyright information.
5 
6 #ifndef CT_IDEALGASREACTOR_H
7 #define CT_IDEALGASREACTOR_H
8 
9 #include "Reactor.h"
10 
11 namespace Cantera
12 {
13 
14 /**
15  * Class IdealGasReactor is a class for stirred reactors that is specifically
16  * optimized for ideal gases. In this formulation, temperature replaces the
17  * total internal energy as a state variable.
18  * @ingroup reactorGroup
19  */
20 class IdealGasReactor : public Reactor
21 {
22 public:
23  IdealGasReactor() {}
24 
25  string type() const override {
26  return "IdealGasReactor";
27  }
28 
29  void setThermoMgr(ThermoPhase& thermo) override;
30 
31  void getState(double* y) override;
32 
33  void initialize(double t0=0.0) override;
34 
35  void eval(double t, double* LHS, double* RHS) override;
36 
37  void updateState(double* y) override;
38 
39  //! Return the index in the solution vector for this reactor of the
40  //! component named *nm*. Possible values for *nm* are "mass",
41  //! "volume", "temperature", the name of a homogeneous phase species, or the
42  //! name of a surface species.
43  size_t componentIndex(const string& nm) const override;
44  string componentName(size_t k) override;
45 
46 protected:
47  vector<double> m_uk; //!< Species molar internal energies
48 };
49 
50 }
51 
52 #endif
Class IdealGasReactor is a class for stirred reactors that is specifically optimized for ideal gases.
void setThermoMgr(ThermoPhase &thermo) override
Specify the mixture contained in the reactor.
void eval(double t, double *LHS, double *RHS) override
Evaluate the reactor governing equations.
string type() const override
String indicating the reactor model implemented.
size_t componentIndex(const string &nm) const override
Return the index in the solution vector for this reactor of the component named nm.
vector< double > m_uk
Species molar internal energies.
void getState(double *y) override
Get the the current state of the reactor.
string componentName(size_t k) override
Return the name of the solution component with index i.
void updateState(double *y) override
Set the state of the reactor to correspond to the state vector y.
void initialize(double t0=0.0) override
Initialize the reactor.
Class Reactor is a general-purpose class for stirred reactors.
Definition: Reactor.h:44
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:390
Namespace for the Cantera kernel.
Definition: AnyMap.cpp:564