Cantera  3.1.0a1

Represents a wall between between two ReactorBase objects. More...

#include <Wall.h>

Inheritance diagram for Wall:
[legend]

Detailed Description

Represents a wall between between two ReactorBase objects.

Walls can move (changing the volume of the adjacent reactors) and allow heat transfer between reactors.

Definition at line 134 of file Wall.h.

Public Member Functions

string type () const override
 String indicating the wall model implemented. More...
 
double velocity () const
 Wall velocity \( v(t) \) at current reactor network time. More...
 
void setVelocity (Func1 *f=0)
 Set the wall velocity to a specified function of time, \( v(t) \). More...
 
double vdot (double t) override
 Rate of volume change (m^3/s) for the adjacent reactors. More...
 
double expansionRate () override
 Rate of volume change (m^3/s) for the adjacent reactors. More...
 
double heatFlux () const
 Heat flux function \( q_0(t) \) evaluated at current reactor network time. More...
 
void setHeatFlux (Func1 *q)
 Specify the heat flux function \( q_0(t) \). More...
 
double Q (double t) override
 Heat flow rate through the wall (W). More...
 
double heatRate () override
 Heat flow rate through the wall (W). More...
 
void setThermalResistance (double Rth)
 
void setHeatTransferCoeff (double 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 (double epsilon)
 Set the emissivity. More...
 
double getEmissivity () const
 Get the emissivity. More...
 
void setExpansionRateCoeff (double k)
 Set the expansion rate coefficient. More...
 
double getExpansionRateCoeff () const
 Get the expansion rate coefficient. More...
 
- Public Member Functions inherited from WallBase
 WallBase (const WallBase &)=delete
 
WallBaseoperator= (const WallBase &)=delete
 
double area ()
 Area in (m^2). More...
 
virtual void setArea (double a)
 Set the area [m^2]. 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...
 
ReactorBaseleft () const
 Return a reference to the Reactor or Reservoir to the left of the wall. More...
 
const ReactorBaseright ()
 Return a reference to the Reactor or Reservoir to the right of the wall. More...
 
void setSimTime (double time)
 Set current reactor network time. More...
 

Protected Attributes

double m_k = 0.0
 expansion rate coefficient More...
 
double m_rrth = 0.0
 heat transfer coefficient More...
 
double m_emiss = 0.0
 emissivity More...
 
Func1m_vf = nullptr
 Velocity function. More...
 
Func1m_qf = nullptr
 Heat flux function. More...
 
- Protected Attributes inherited from WallBase
ReactorBasem_left = nullptr
 
ReactorBasem_right = nullptr
 
double m_time = 0.0
 current reactor network time More...
 
double m_area = 1.0
 

Member Function Documentation

◆ type()

string type ( ) const
inlineoverridevirtual

String indicating the wall model implemented.

Usually corresponds to the name of the derived class.

Reimplemented from WallBase.

Definition at line 141 of file Wall.h.

◆ velocity()

double velocity ( ) const

Wall velocity \( v(t) \) at current reactor network time.

Since
New in Cantera 3.0.

Definition at line 30 of file Wall.cpp.

◆ setVelocity()

void setVelocity ( Func1 f = 0)
inline

Set the wall velocity to a specified function of time, \( v(t) \).

Definition at line 150 of file Wall.h.

◆ vdot()

double vdot ( double  t)
overridevirtual

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.

Deprecated:
Still used by traditional MATLAB toolbox; replaceable by expansionRate.

Reimplemented from WallBase.

Definition at line 37 of file Wall.cpp.

◆ expansionRate()

double expansionRate ( )
overridevirtual

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 and F(t) is a specified function evaluated at the current network time. Positive values for expansionRate correspond to increases in the volume of reactor on left, and decreases in the volume of the reactor on the right.

Since
New in Cantera 3.0.

Reimplemented from WallBase.

Definition at line 48 of file Wall.cpp.

◆ heatFlux()

double heatFlux ( ) const

Heat flux function \( q_0(t) \) evaluated at current reactor network time.

Since
New in Cantera 3.0.

Definition at line 58 of file Wall.cpp.

◆ setHeatFlux()

void setHeatFlux ( Func1 q)
inline

Specify the heat flux function \( q_0(t) \).

Definition at line 190 of file Wall.h.

◆ Q()

double Q ( double  t)
overridevirtual

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.

Deprecated:
Still used by traditional MATLAB toolbox; replaceable by heatRate.

Reimplemented from WallBase.

Definition at line 65 of file Wall.cpp.

◆ heatRate()

double heatRate ( )
overridevirtual

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 evaluated at the current network time. Positive values denote a flux from left to right.

Since
New in Cantera 3.0.

Reimplemented from WallBase.

Definition at line 82 of file Wall.cpp.

◆ setHeatTransferCoeff()

void setHeatTransferCoeff ( double  U)
inline

Set the overall heat transfer coefficient [W/m^2/K].

Definition at line 225 of file Wall.h.

◆ getHeatTransferCoeff()

double getHeatTransferCoeff ( ) const
inline

Get the overall heat transfer coefficient [W/m^2/K].

Definition at line 230 of file Wall.h.

◆ setEmissivity()

void setEmissivity ( double  epsilon)
inline

Set the emissivity.

Definition at line 235 of file Wall.h.

◆ getEmissivity()

double getEmissivity ( ) const
inline

Get the emissivity.

Definition at line 244 of file Wall.h.

◆ setExpansionRateCoeff()

void setExpansionRateCoeff ( double  k)
inline

Set the expansion rate coefficient.

Definition at line 249 of file Wall.h.

◆ getExpansionRateCoeff()

double getExpansionRateCoeff ( ) const
inline

Get the expansion rate coefficient.

Definition at line 254 of file Wall.h.

Member Data Documentation

◆ m_k

double m_k = 0.0
protected

expansion rate coefficient

Definition at line 261 of file Wall.h.

◆ m_rrth

double m_rrth = 0.0
protected

heat transfer coefficient

Definition at line 264 of file Wall.h.

◆ m_emiss

double m_emiss = 0.0
protected

emissivity

Definition at line 267 of file Wall.h.

◆ m_vf

Func1* m_vf = nullptr
protected

Velocity function.

Definition at line 270 of file Wall.h.

◆ m_qf

Func1* m_qf = nullptr
protected

Heat flux function.

Definition at line 273 of file Wall.h.


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