Composite system representing the Convection term for all components.
More...
#include <convectionSystem.h>
|
| dvec & | x |
| | The coordinates of the grid points [m].
|
| |
| dvec & | r |
| | "radius" at x[j].
|
| |
| dvec & | rphalf |
| | "radius" at x[j+1/2].
|
| |
| dvec & | hh |
| | Grid spacing between x[j] and x[j+1].
|
| |
| dvec & | dlj |
| | Average of left and right grid spacing.
|
| |
| dvec & | cfm |
| | Coefficient for y[j-1] in first centered difference.
|
| |
| dvec & | cf |
| | Coefficient for y[j] in first centered difference.
|
| |
| dvec & | cfp |
| | Coefficient for y[j+1] in first centered difference.
|
| |
| int & | alpha |
| | curved grid exponent.
|
| |
| int & | beta |
| | curved grid exponent.
|
| |
| size_t & | nPoints |
| | number of grid point
|
| |
| size_t & | jj |
| | index of last grid point (== nPoints-1)
|
| |
Composite system representing the Convection term for all components.
System which combines a ConvectionSystemUTW object and several ConvectionSystemY objects that together represent the complete convection term for all components.
◆ ConvectionSystemSplit()
| ConvectionSystemSplit::ConvectionSystemSplit |
( |
| ) |
|
◆ setGrid()
| void ConvectionSystemSplit::setGrid |
( |
const OneDimGrid & | grid | ) |
|
|
virtual |
Copy the specified grid to this object.
Reimplemented from GridBased.
◆ setTolerances()
| void ConvectionSystemSplit::setTolerances |
( |
const ConfigOptions & | options | ) |
|
Set tolerances for the CVODE solvers.
◆ setGas()
| void ConvectionSystemSplit::setGas |
( |
CanteraGas & | gas | ) |
|
Set the Cantera object used for property evaluations.
◆ resize()
| void ConvectionSystemSplit::resize |
( |
const size_t | nPoints, |
|
|
const size_t | nSpec, |
|
|
dmatrix & | state ) |
Set the problem size and provide values for the current state variables.
◆ setState()
| void ConvectionSystemSplit::setState |
( |
double | tInitial | ) |
|
Set the state of the internal solvers from the state of the composite solver.
◆ setLeftBC()
| void ConvectionSystemSplit::setLeftBC |
( |
const double | Tleft, |
|
|
const dvec & | Yleft ) |
◆ set_rVzero()
| void ConvectionSystemSplit::set_rVzero |
( |
const double | rVzero | ) |
|
Set the mass flux boundary value at j=0.
◆ evaluate()
| void ConvectionSystemSplit::evaluate |
( |
| ) |
|
Evaluate time derivatives for each state variable and the normal mass flux at the current state.
◆ setDensityDerivative()
| void ConvectionSystemSplit::setDensityDerivative |
( |
const dvec & | drhodt | ) |
|
Set the time derivative of the density.
Time derivatives of species and temperature from the other split terms are needed to correctly compute the density derivative appearing in the continuity equation.
◆ updateContinuityBoundaryCondition()
◆ setSplitConstants()
| void ConvectionSystemSplit::setSplitConstants |
( |
const dmatrix & | splitConst | ) |
|
Set the constants introduced by the splitting method.
◆ resetSplitConstants()
| void ConvectionSystemSplit::resetSplitConstants |
( |
| ) |
|
Set the constants introduced by the splitting method to zero.
◆ integrateToTime()
| void ConvectionSystemSplit::integrateToTime |
( |
const double | tf | ) |
|
Integrate the the split convection equations to tf.
◆ integrateSpeciesTerms()
| void ConvectionSystemSplit::integrateSpeciesTerms |
( |
size_t | k1, |
|
|
size_t | k2 ) |
Integrate the species terms in the range [k1, k2)
◆ unroll_y()
| void ConvectionSystemSplit::unroll_y |
( |
| ) |
|
convert the solver's solution vectors to the full U, Y, and T.
◆ getNumSteps()
| int ConvectionSystemSplit::getNumSteps |
( |
| ) |
|
Compute the total number of timesteps taken by the solvers for the individual components.
◆ setupQuasi2D()
Set the velocity field data used in the Quasi2D case.
◆ configureSolver()
| void ConvectionSystemSplit::configureSolver |
( |
SundialsCvode & | solver, |
|
|
const size_t | k ) |
|
private |
| VecMap ConvectionSystemSplit::U |
normalized tangential velocity (u*a/u_inf) [1/s]
| VecMap ConvectionSystemSplit::T |
species mass fractions, Y(k,j) [-]
◆ Wmx
| dvec ConvectionSystemSplit::Wmx |
Mixture molecular weight [kg/kmol].
| dvec ConvectionSystemSplit::V |
mass flux normal to the flame [kg/m^2*s]
◆ dUdt
| dvec ConvectionSystemSplit::dUdt |
Time derivative of U [1/s^2].
◆ dTdt
| dvec ConvectionSystemSplit::dTdt |
Time derivative of T [K/s].
◆ dWdt
| dvec ConvectionSystemSplit::dWdt |
Time derivative of Wmx [kg/kmol*s].
◆ dYdt
| dmatrix ConvectionSystemSplit::dYdt |
Time derivative of Y [1/s].
◆ utwSystem
System used to solve for U, T, and Wmx.
◆ vInterp
Interpolation data for V, used for the species solvers.
◆ utwTimer
◆ speciesTimer
| PerfTimer ConvectionSystemSplit::speciesTimer |
◆ reltol
| double ConvectionSystemSplit::reltol |
|
private |
CVODE integration tolerances.
relative integrator tolerance
◆ abstolU
| double ConvectionSystemSplit::abstolU |
|
private |
velocity absolute tolerance
◆ abstolT
| double ConvectionSystemSplit::abstolT |
|
private |
temperature absolute tolerance
◆ abstolW
| double ConvectionSystemSplit::abstolW |
|
private |
molecular weight absolute tolerance
◆ abstolY
| double ConvectionSystemSplit::abstolY |
|
private |
mass fraction absolute tolerance
◆ utwSolver
◆ speciesSystems
Systems used to solve the convection term for each species.
◆ speciesSolvers
| boost::ptr_vector<SundialsCvode> ConvectionSystemSplit::speciesSolvers |
|
private |
◆ Yleft
| dvec ConvectionSystemSplit::Yleft |
|
private |
| dvec ConvectionSystemSplit::W |
|
private |
Molecular weight of each species [kg/kmol].
◆ nSpec
| size_t ConvectionSystemSplit::nSpec |
|
private |
◆ nVars
| size_t ConvectionSystemSplit::nVars |
|
private |
Number of state variables in the UTW system (==3)
◆ gas
Cantera object used for computing Wmx.
◆ quasi2d
| bool ConvectionSystemSplit::quasi2d |
|
private |
true when solving the quasi-2d problem; false otherwise.
◆ tStageStop
| double ConvectionSystemSplit::tStageStop |
|
private |
end time of the current integration stage
◆ sunContext
The documentation for this class was generated from the following files: