Cantera
2.5.1
|
A non-reacting surface. More...
#include <Boundary1D.h>
Public Member Functions | |
virtual void | init () |
virtual void | eval (size_t jg, double *xg, double *rg, integer *diagg, double rdt) |
Evaluate the residual function at point j. More... | |
virtual XML_Node & | save (XML_Node &o, const double *const soln) |
Save the current solution for this domain into an XML_Node. More... | |
virtual void | restore (const XML_Node &dom, double *soln, int loglevel) |
Restore the solution for this domain from an XML_Node. More... | |
virtual void | showSolution_s (std::ostream &s, const double *x) |
virtual void | showSolution (const double *x) |
Print the solution. More... | |
Public Member Functions inherited from Boundary1D | |
virtual void | setTemperature (double t) |
Set the temperature. More... | |
virtual double | temperature () |
Temperature [K]. More... | |
virtual size_t | nSpecies () |
virtual void | setMoleFractions (const std::string &xin) |
Set the mole fractions by specifying a std::string. More... | |
virtual void | setMoleFractions (const double *xin) |
Set the mole fractions by specifying an array. More... | |
virtual double | massFraction (size_t k) |
Mass fraction of species k. More... | |
virtual void | setMdot (double mdot) |
Set the total mass flow rate. More... | |
virtual double | mdot () |
The total mass flow rate [kg/m2/s]. More... | |
virtual void | setupGrid (size_t n, const double *z) |
called to set up initial grid, and after grid refinement More... | |
Public Member Functions inherited from Domain1D | |
Domain1D (size_t nv=1, size_t points=1, double time=0.0) | |
Constructor. More... | |
Domain1D (const Domain1D &)=delete | |
Domain1D & | operator= (const Domain1D &)=delete |
int | domainType () |
Domain type flag. More... | |
size_t | domainIndex () |
The left-to-right location of this domain. More... | |
bool | isConnector () |
True if the domain is a connector domain. More... | |
const OneDim & | container () const |
The container holding this domain. More... | |
void | setContainer (OneDim *c, size_t index) |
Specify the container object for this domain, and the position of this domain in the list. More... | |
void | setBandwidth (int bw=-1) |
Set the Jacobian bandwidth. See the discussion of method bandwidth(). More... | |
size_t | bandwidth () |
Set the Jacobian bandwidth for this domain. More... | |
virtual void | setInitialState (doublereal *xlocal=0) |
virtual void | setState (size_t point, const doublereal *state, doublereal *x) |
virtual void | resetBadValues (double *xg) |
virtual void | resize (size_t nv, size_t np) |
Refiner & | refiner () |
Return a reference to the grid refiner. More... | |
size_t | nComponents () const |
Number of components at each grid point. More... | |
void | checkComponentIndex (size_t n) const |
Check that the specified component index is in range. More... | |
void | checkComponentArraySize (size_t nn) const |
Check that an array size is at least nComponents(). More... | |
size_t | nPoints () const |
Number of grid points in this domain. More... | |
void | checkPointIndex (size_t n) const |
Check that the specified point index is in range. More... | |
void | checkPointArraySize (size_t nn) const |
Check that an array size is at least nPoints(). More... | |
virtual std::string | componentName (size_t n) const |
Name of the nth component. May be overloaded. More... | |
void | setComponentName (size_t n, const std::string &name) |
virtual size_t | componentIndex (const std::string &name) const |
index of component with name name. More... | |
void | setBounds (size_t n, doublereal lower, doublereal upper) |
void | setTransientTolerances (doublereal rtol, doublereal atol, size_t n=npos) |
Set tolerances for time-stepping mode. More... | |
void | setSteadyTolerances (doublereal rtol, doublereal atol, size_t n=npos) |
Set tolerances for steady-state mode. More... | |
doublereal | rtol (size_t n) |
Relative tolerance of the nth component. More... | |
doublereal | atol (size_t n) |
Absolute tolerance of the nth component. More... | |
double | steady_rtol (size_t n) |
Steady relative tolerance of the nth component. More... | |
double | steady_atol (size_t n) |
Steady absolute tolerance of the nth component. More... | |
double | transient_rtol (size_t n) |
Transient relative tolerance of the nth component. More... | |
double | transient_atol (size_t n) |
Transient absolute tolerance of the nth component. More... | |
doublereal | upperBound (size_t n) const |
Upper bound on the nth component. More... | |
doublereal | lowerBound (size_t n) const |
Lower bound on the nth component. More... | |
void | initTimeInteg (doublereal dt, const doublereal *x0) |
Prepare to do time stepping with time step dt. More... | |
void | setSteadyMode () |
Prepare to solve the steady-state problem. More... | |
bool | steady () |
True if in steady-state mode. More... | |
bool | transient () |
True if not in steady-state mode. More... | |
void | needJacUpdate () |
size_t | index (size_t n, size_t j) const |
doublereal | value (const doublereal *x, size_t n, size_t j) const |
virtual void | setJac (MultiJac *jac) |
size_t | size () const |
void | locate () |
Find the index of the first grid point in this domain, and the start of its variables in the global solution vector. More... | |
virtual size_t | loc (size_t j=0) const |
Location of the start of the local solution vector in the global solution vector,. More... | |
size_t | firstPoint () const |
The index of the first (i.e., left-most) grid point belonging to this domain. More... | |
size_t | lastPoint () const |
The index of the last (i.e., right-most) grid point belonging to this domain. More... | |
void | linkLeft (Domain1D *left) |
Set the left neighbor to domain 'left. More... | |
void | linkRight (Domain1D *right) |
Set the right neighbor to domain 'right.'. More... | |
void | append (Domain1D *right) |
Append domain 'right' to this one, and update all links. More... | |
Domain1D * | left () const |
Return a pointer to the left neighbor. More... | |
Domain1D * | right () const |
Return a pointer to the right neighbor. More... | |
double | prevSoln (size_t n, size_t j) const |
Value of component n at point j in the previous solution. More... | |
void | setID (const std::string &s) |
Specify an identifying tag for this domain. More... | |
std::string | id () const |
doublereal | z (size_t jlocal) const |
doublereal | zmin () const |
doublereal | zmax () const |
void | setProfile (const std::string &name, double *values, double *soln) |
vector_fp & | grid () |
const vector_fp & | grid () const |
doublereal | grid (size_t point) const |
virtual void | _getInitialSoln (doublereal *x) |
Writes some or all initial solution values into the global solution array, beginning at the location pointed to by x. More... | |
virtual doublereal | initialValue (size_t n, size_t j) |
Initial value of solution component n at grid point j. More... | |
virtual void | _finalize (const doublereal *x) |
In some cases, a domain may need to set parameters that depend on the initial solution estimate. More... | |
void | forceFullUpdate (bool update) |
In some cases, for computational efficiency some properties (e.g. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Boundary1D | |
void | _init (size_t n) |
Protected Attributes inherited from Boundary1D | |
StFlow * | m_flow_left |
StFlow * | m_flow_right |
size_t | m_ilr |
size_t | m_left_nv |
size_t | m_right_nv |
size_t | m_left_loc |
size_t | m_right_loc |
size_t | m_left_points |
size_t | m_left_nsp |
size_t | m_right_nsp |
size_t | m_sp_left |
size_t | m_sp_right |
size_t | m_start_left |
size_t | m_start_right |
ThermoPhase * | m_phase_left |
ThermoPhase * | m_phase_right |
double | m_temp |
double | m_mdot |
Protected Attributes inherited from Domain1D | |
doublereal | m_rdt |
size_t | m_nv |
size_t | m_points |
vector_fp | m_slast |
vector_fp | m_max |
vector_fp | m_min |
vector_fp | m_rtol_ss |
vector_fp | m_rtol_ts |
vector_fp | m_atol_ss |
vector_fp | m_atol_ts |
vector_fp | m_z |
OneDim * | m_container |
size_t | m_index |
int | m_type |
size_t | m_iloc |
Starting location within the solution vector for unknowns that correspond to this domain. More... | |
size_t | m_jstart |
Domain1D * | m_left |
Domain1D * | m_right |
std::string | m_id |
Identity tag for the domain. More... | |
std::string | m_desc |
std::unique_ptr< Refiner > | m_refiner |
std::vector< std::string > | m_name |
int | m_bw |
bool | m_force_full_update |
A non-reacting surface.
The axial velocity is zero (impermeable), as is the transverse velocity (no slip). The temperature is specified, and a zero flux condition is imposed for the species.
Definition at line 265 of file Boundary1D.h.
|
virtual |
Initialize. This method is called by OneDim::init() for each domain once at the beginning of a simulation. Base class method does nothing, but may be overloaded.
Reimplemented from Boundary1D.
Definition at line 542 of file Boundary1D.cpp.
|
virtual |
Evaluate the residual function at point j.
If j == npos, evaluate the residual function at all points.
This function must be implemented in classes derived from Domain1D.
j | Grid point at which to update the residual | |
[in] | x | State vector |
[out] | r | residual vector |
[out] | mask | Boolean mask indicating whether each solution component has a time derivative (1) or not (0). |
[in] | rdt | Reciprocal of the timestep (rdt=0 implies steady- state.) |
Reimplemented from Domain1D.
Definition at line 547 of file Boundary1D.cpp.
References Domain1D::firstPoint(), Domain1D::lastPoint(), Domain1D::loc(), Domain1D::nComponents(), and Cantera::npos.
Save the current solution for this domain into an XML_Node.
Base class version of the general domain1D save function. Derived classes should call the base class method in addition to saving their own data.
o | XML_Node to save the solution to. |
sol | Current value of the solution vector. The object will pick out which part of the solution vector pertains to this object. |
Reimplemented from Domain1D.
Definition at line 572 of file Boundary1D.cpp.
References XML_Node::addAttribute(), Cantera::addFloat(), and Domain1D::save().
|
virtual |
Restore the solution for this domain from an XML_Node.
Base class version of the general Domain1D restore function. Derived classes should call the base class method in addition to restoring their own data.
dom | XML_Node for this domain |
soln | Current value of the solution vector, local to this object. |
loglevel | 0 to suppress all output; 1 to show warnings; 2 for verbose output |
Reimplemented from Domain1D.
Definition at line 580 of file Boundary1D.cpp.
References Cantera::getFloat(), Domain1D::resize(), and Domain1D::restore().
|
inlinevirtual |
Print the solution.
Reimplemented from Domain1D.
Definition at line 282 of file Boundary1D.h.
References Cantera::writelog().