Base class for flame wrinkling profiles. More...


Public Member Functions | |
| TypeName ("XiProfile") | |
| Runtime type information. More... | |
| declareRunTimeSelectionTable (autoPtr, XiProfile, dictionary,(const dictionary &dict, const volScalarField &b),(dict, b)) | |
| XiProfile (const volScalarField &b) | |
| Construct from components. More... | |
| XiProfile (const XiProfile &)=delete | |
| Disallow default bitwise copy construction. More... | |
| virtual | ~XiProfile () |
| Destructor. More... | |
| virtual tmp< volScalarField > | profile () const =0 |
| Return the flame-wrinkling profile. More... | |
| bool | read (const dictionary &XiProperties) |
| Update properties from the given XiProperties dictionary. More... | |
| void | operator= (const XiProfile &)=delete |
| Disallow default bitwise assignment. More... | |
Static Public Member Functions | |
| static autoPtr< XiProfile > | New (const dictionary &XiProperties, const volScalarField &b) |
| Return a reference to the selected XiEq model. More... | |
Protected Member Functions | |
| virtual bool | readCoeffs (const dictionary &dict)=0 |
| Update coefficients from given dictionary. More... | |
Protected Attributes | |
| const volScalarField & | b_ |
Base class for flame wrinkling profiles.
Flame wrinkling profiles are functions of b only for simplicity and numerical stability. The profiles are usually formulated so that the flame wrinkling Xi is equal to the equilibrium value in the middle of the flame, i.e. where b = 0.5, but this does not guarantee that the flame propagates at the correct speed with heat release due to the slight asymmetry in b distribution caused by the heat release dilatation.
In principle a better distribution function for Xi would be based directly on the laplacian(b) such that Xi equals the equilibrium value at the point in the flame where the Laplacian of b is 0, e.g.
Xi = max(XiEq + 0.1*XiEqrho*fvc::laplacian(Db, b)/(rhou*Db*sqr(mgb)), 1)
While this does provide the correct speed for a well resolved 1D flame it is prone to cause serious numerical instability and is not applicable to real flame simulations.
A more practical approach to correct the flame speed for the dilatation effect would be to introduce a small amount of off-centring to the Xi distribution as a function of b which would need to be a function of at least the density ratio and possibly the equilibrium Xi also – this is the subject of current research.
Definition at line 72 of file XiProfile.H.
| XiProfile | ( | const volScalarField & | b | ) |
Construct from components.
Definition at line 47 of file XiProfile.C.
|
virtual |
Destructor.
Definition at line 55 of file XiProfile.C.
|
protectedpure virtual |
Update coefficients from given dictionary.
Implemented in uniform, linear, and cubic.
Definition at line 39 of file XiProfile.C.
Referenced by cubic::readCoeffs(), linear::readCoeffs(), and uniform::readCoeffs().

| TypeName | ( | "XiProfile" | ) |
Runtime type information.
| declareRunTimeSelectionTable | ( | autoPtr | , |
| XiProfile | , | ||
| dictionary | , | ||
| (const dictionary &dict, const volScalarField &b) | , | ||
| (dict, b) | |||
| ) |
|
static |
Return a reference to the selected XiEq model.
Definition at line 30 of file XiProfileNew.C.
References b, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::indentOrNl(), Foam::Info, dictionary::lookup(), Foam::nl, dictionary::optionalTypeDict(), and dictionary::subDict().

|
pure virtual |
| bool read | ( | const dictionary & | XiProperties | ) |
Update properties from the given XiProperties dictionary.
Definition at line 61 of file XiProfile.C.
References dictionary::optionalTypeDict(), dictionary::subDict(), and Foam::type().

|
delete |
Disallow default bitwise assignment.
|
protected |
Definition at line 79 of file XiProfile.H.