Cantera  2.5.1
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  */
19 class IdealGasReactor : public Reactor
20 {
21 public:
22  IdealGasReactor() {}
23 
24  virtual std::string typeStr() const {
25  return "IdealGasReactor";
26  }
27 
28  /*!
29  * @deprecated To be changed after Cantera 2.5.
30  */
31  virtual int type() const {
32  warn_deprecated("IdealGasReactor::type",
33  "To be changed after Cantera 2.5. "
34  "Return string instead of magic number; use "
35  "IdealGasReactor::typeStr during transition");
36  return IdealGasReactorType;
37  }
38 
39  virtual void setThermoMgr(ThermoPhase& thermo);
40 
41  virtual void getState(doublereal* y);
42 
43  virtual void initialize(doublereal t0 = 0.0);
44 
45  virtual void evalEqs(doublereal t, doublereal* y,
46  doublereal* ydot, doublereal* params);
47 
48  virtual void updateState(doublereal* y);
49 
50  //! Return the index in the solution vector for this reactor of the
51  //! component named *nm*. Possible values for *nm* are "mass",
52  //! "volume", "temperature", the name of a homogeneous phase species, or the
53  //! name of a surface species.
54  virtual size_t componentIndex(const std::string& nm) const;
55  std::string componentName(size_t k);
56 
57 protected:
58  vector_fp m_uk; //!< Species molar internal energies
59 };
60 
61 }
62 
63 #endif
Class IdealGasReactor is a class for stirred reactors that is specifically optimized for ideal gases.
virtual size_t componentIndex(const std::string &nm) const
Return the index in the solution vector for this reactor of the component named nm.
virtual void updateState(doublereal *y)
Set the state of the reactor to correspond to the state vector y.
virtual std::string typeStr() const
String indicating the reactor model implemented.
virtual void getState(doublereal *y)
Get the the current state of the reactor.
virtual int type() const
std::string componentName(size_t k)
Return the name of the solution component with index i.
virtual void initialize(doublereal t0=0.0)
Initialize the reactor.
virtual void evalEqs(doublereal t, doublereal *y, doublereal *ydot, doublereal *params)
virtual void setThermoMgr(ThermoPhase &thermo)
Specify the mixture contained in the reactor.
vector_fp m_uk
Species molar internal energies.
Class Reactor is a general-purpose class for stirred reactors.
Definition: Reactor.h:38
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:102
void warn_deprecated(const std::string &method, const std::string &extra)
Print a warning indicating that method is deprecated.
Definition: global.cpp:54
std::vector< double > vector_fp
Turn on the use of stl vectors for the basic array type within cantera Vector of doubles.
Definition: ct_defs.h:180
Namespace for the Cantera kernel.
Definition: AnyMap.cpp:264