6#ifndef CT_REACTOR_SURFACE_H
7#define CT_REACTOR_SURFACE_H
23 using ReactorBase::ReactorBase;
26 string type()
const override {
27 return "ReactorSurface";
53 "Inlets are undefined for reactors of type '{}'.",
type());
58 "Outlets are undefined for reactors of type '{}'.",
type());
119 vector<double> m_cov;
Base class for 'flow devices' (valves, pressure regulators, etc.) connecting reactors.
Public interface for kinetics managers.
An error indicating that an unimplemented function has been called.
Base class for reactor objects.
FlowDevice & outlet(size_t n=0)
Return a reference to the n-th outlet FlowDevice connected to this reactor.
FlowDevice & inlet(size_t n=0)
Return a reference to the n-th inlet FlowDevice connected to this reactor.
string name() const
Return the name of this reactor.
A surface where reactions can occur that is in contact with the bulk fluid of a Reactor.
void addSurface(ReactorSurface *surf) override
Add a ReactorSurface object to a Reactor object.
double area() const
Returns the surface area [m^2].
void setReactor(ReactorBase *reactor)
Set the reactor that this Surface interacts with.
void addOutlet(FlowDevice &outlet) override
Connect an outlet FlowDevice to this reactor.
void setSensitivityParameters(const double *params)
Set reaction rate multipliers.
string type() const override
String indicating the wall model implemented.
void getCoverages(double *cov) const
Get the surface coverages.
void setArea(double a)
Set the surface area [m^2].
void resetSensitivityParameters()
Set reaction rate multipliers back to their initial values.
void addSensitivityReaction(size_t rxn) override
Add a sensitivity parameter associated with the reaction number rxn
void setThermo(ThermoPhase &thermo) override
Specify the mixture contained in the reactor.
void syncState() override
Set the coverages and temperature in the surface phase object to the values for this surface.
void setCoverages(const double *cov)
Set the surface coverages.
void setKinetics(Kinetics *kin)
Set the InterfaceKinetics object for this surface.
SurfPhase * thermo()
Accessor for the SurfPhase object.
Kinetics * kinetics()
Accessor for the InterfaceKinetics object.
void addInlet(FlowDevice &inlet) override
Connect an inlet FlowDevice to this reactor.
void addWall(WallBase &w, int lr) override
Insert a Wall between this reactor and another reactor.
A simple thermodynamic model for a surface phase, assuming an ideal solution model.
Base class for a phase with thermodynamic properties.
Base class for 'walls' (walls, pistons, etc.) connecting reactors.
Namespace for the Cantera kernel.
map< string, double > Composition
Map from string names to doubles.