Cantera
2.1.2
|
Represents a wall between between two ReactorBase objects. More...
#include <Wall.h>
Public Member Functions | |
virtual doublereal | vdot (doublereal t) |
Rate of volume change (m^3/s) for the adjacent reactors. More... | |
virtual doublereal | Q (doublereal t) |
Heat flow rate through the wall (W). More... | |
doublereal | area () |
Area in m^2. More... | |
void | setArea (doublereal a) |
Set the area [m^2]. More... | |
double | getArea () const |
Get the area [m^2]. More... | |
void | setThermalResistance (doublereal Rth) |
void | setHeatTransferCoeff (doublereal U) |
Set the overall heat transfer coefficient [W/m^2/K]. More... | |
double | getHeatTransferCoeff () const |
Get the overall heat transfer coefficient [W/m^2/K]. More... | |
void | setEmissivity (doublereal epsilon) |
Set the emissivity. More... | |
double | getEmissivity () const |
void | setVelocity (Cantera::Func1 *f=0) |
Set the wall velocity to a specified function of time. More... | |
void | setExpansionRateCoeff (doublereal k) |
Set the expansion rate coefficient. More... | |
double | getExpansionRateCoeff () const |
Get the expansion rate coefficient. More... | |
void | setHeatFlux (Cantera::Func1 *q) |
Specify the heat flux function \( q_0(t) \). More... | |
bool | install (ReactorBase &leftReactor, ReactorBase &rightReactor) |
Install the wall between two reactors or reservoirs. More... | |
virtual void | initialize () |
Called just before the start of integration. More... | |
virtual bool | ready () |
True if the wall is correctly configured and ready to use. More... | |
ReactorBase & | left () const |
Return a reference to the Reactor or Reservoir to the left of the wall. More... | |
const ReactorBase & | right () |
Return a reference to the Reactor or Reservoir to the right of the wall. More... | |
void | setKinetics (Cantera::Kinetics *leftMechanism, Cantera::Kinetics *rightMechanism) |
Specify the heterogeneous reaction mechanisms for each side of the wall. More... | |
Cantera::SurfPhase * | surface (int leftright) |
Return a pointer to the surface phase object for the left (leftright=0 ) or right (leftright=1 ) wall surface. More... | |
Cantera::Kinetics * | kinetics (int leftright) |
Return a pointer to the surface kinetics object for the left (leftright=0 ) or right (leftright=1 ) wall surface. More... | |
void | setCoverages (int leftright, const doublereal *cov) |
Set the surface coverages on the left (leftright = 0 ) or right (leftright = 1 ) surface to the values in array cov . More... | |
void | getCoverages (int leftright, doublereal *cov) |
Write the coverages of the left or right surface into array cov . More... | |
void | syncCoverages (int leftright) |
Set the coverages in the surface phase object to the values for this wall surface. More... | |
size_t | nSensParams (int lr) const |
Number of sensitivity parameters associated with reactions on the left (lr = 0 ) or right (lr = 1 ) side of the wall. More... | |
void | addSensitivityReaction (int leftright, size_t rxn) |
void | setSensitivityParameters (int lr, double *params) |
void | resetSensitivityParameters (int lr) |
Protected Attributes | |
ReactorBase * | m_left |
ReactorBase * | m_right |
Cantera::Kinetics * | m_chem [2] |
Cantera::SurfPhase * | m_surf [2] |
size_t | m_nsp [2] |
doublereal | m_area |
doublereal | m_k |
doublereal | m_rrth |
doublereal | m_emiss |
Cantera::Func1 * | m_vf |
Cantera::Func1 * | m_qf |
Cantera::vector_fp | m_leftcov |
Cantera::vector_fp | m_rightcov |
std::vector< size_t > | m_pleft |
std::vector< size_t > | m_pright |
Cantera::vector_fp | m_leftmult_save |
Cantera::vector_fp | m_rightmult_save |
Represents a wall between between two ReactorBase objects.
Walls can move (changing the volume of the adjacent reactors), allow heat transfer between reactors, and provide a location for surface reactions to take place.
|
virtual |
Rate of volume change (m^3/s) for the adjacent reactors.
The volume rate of change is given by
\[ \dot V = K A (P_{left} - P_{right}) + F(t) \]
where K is the specified expansion rate coefficient, A is the wall area, and F(t) is a specified function of time. Positive values for vdot
correspond to increases in the volume of reactor on left, and decreases in the volume of the reactor on the right.
Definition at line 71 of file Wall.cpp.
References Func1::eval(), and ReactorBase::pressure().
|
virtual |
Heat flow rate through the wall (W).
The heat flux is given by
\[ Q = h A (T_{left} - T_{right}) + A G(t) \]
where h is the heat transfer coefficient, A is the wall area, and G(t) is a specified function of time. Positive values denote a flux from left to right.
Definition at line 81 of file Wall.cpp.
References Func1::eval(), Cantera::StefanBoltz, and ReactorBase::temperature().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
bool install | ( | ReactorBase & | leftReactor, |
ReactorBase & | rightReactor | ||
) |
Install the wall between two reactors or reservoirs.
Definition at line 22 of file Wall.cpp.
References ReactorBase::addWall().
|
virtual |
|
inlinevirtual |
|
inline |
Return a reference to the Reactor or Reservoir to the left of the wall.
Definition at line 132 of file Wall.h.
Referenced by ReactorNet::initialize(), and Wall::setKinetics().
|
inline |
Return a reference to the Reactor or Reservoir to the right of the wall.
Definition at line 138 of file Wall.h.
Referenced by ReactorNet::initialize(), and Wall::setKinetics().
void setKinetics | ( | Cantera::Kinetics * | leftMechanism, |
Cantera::Kinetics * | rightMechanism | ||
) |
Specify the heterogeneous reaction mechanisms for each side of the wall.
Passing a null pointer indicates that there is no reaction mechanism for the corresponding wall surface.
Definition at line 41 of file Wall.cpp.
References DATA_PTR, SurfPhase::getCoverages(), Wall::left(), Cantera::npos, Phase::nSpecies(), Wall::right(), Kinetics::surfacePhaseIndex(), and Kinetics::thermo().
|
inline |
|
inline |
void setCoverages | ( | int | leftright, |
const doublereal * | cov | ||
) |
void getCoverages | ( | int | leftright, |
doublereal * | cov | ||
) |
void syncCoverages | ( | int | leftright | ) |
Set the coverages in the surface phase object to the values for this wall surface.
Definition at line 114 of file Wall.cpp.
References DATA_PTR, and SurfPhase::setCoverages().
|
inline |