Cantera 2.6.0
IdealGasConstPressureReactor.h
1//! @file ConstPressureReactor.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_IDEALGASCONSTP_REACTOR_H
7#define CT_IDEALGASCONSTP_REACTOR_H
8
10
11namespace Cantera
12{
13
14/**
15 * Class ConstPressureReactor is a class for constant-pressure reactors. The
16 * reactor may have an arbitrary number of inlets and outlets, each of which may
17 * be connected to a "flow device" such as a mass flow controller, a pressure
18 * regulator, etc. Additional reactors may be connected to the other end of the
19 * flow device, allowing construction of arbitrary reactor networks.
20 */
22{
23public:
25
26 virtual std::string typeStr() const {
27 warn_deprecated("IdealGasConstPressureReactor::typeStr",
28 "To be removed after Cantera 2.6. Use type() instead.");
29 return "IdealGasConstPressureReactor";
30 }
31
32 virtual std::string type() const {
33 return "IdealGasConstPressureReactor";
34 }
35
36 virtual void setThermoMgr(ThermoPhase& thermo);
37
38 virtual void getState(doublereal* y);
39
40 virtual void initialize(doublereal t0 = 0.0);
41 virtual void eval(double t, double* LHS, double* RHS);
42
43 virtual void updateState(doublereal* y);
44
45 //! Return the index in the solution vector for this reactor of the
46 //! component named *nm*. Possible values for *nm* are "mass",
47 //! "temperature", the name of a homogeneous phase species, or the name of a
48 //! surface species.
49 virtual size_t componentIndex(const std::string& nm) const;
50 std::string componentName(size_t k);
51
52protected:
53 vector_fp m_hk; //!< Species molar enthalpies
54};
55}
56
57#endif
Class ConstPressureReactor is a class for constant-pressure reactors.
Class ConstPressureReactor is a class for constant-pressure reactors.
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 void eval(double t, double *LHS, double *RHS)
Evaluate the reactor governing equations.
virtual std::string typeStr() const
String indicating the reactor model implemented.
virtual void getState(doublereal *y)
Get the the current state of the reactor.
std::string componentName(size_t k)
Return the name of the solution component with index i.
virtual std::string type() const
String indicating the reactor model implemented.
virtual void initialize(doublereal t0=0.0)
Initialize the reactor.
virtual void setThermoMgr(ThermoPhase &thermo)
Specify the mixture contained in the reactor.
vector_fp m_hk
Species molar enthalpies.
Base class for a phase with thermodynamic properties.
Definition: ThermoPhase.h:102
Namespace for the Cantera kernel.
Definition: AnyMap.h:29
void warn_deprecated(const std::string &source, const AnyBase &node, const std::string &message)
A deprecation warning for syntax in an input file.
Definition: AnyMap.cpp:1901
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:184