algebraic.H
Go to the documentation of this file.
1/*---------------------------------------------------------------------------*\
2 ========= |
3 \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4 \\ / O peration |
5 \\ / A nd | www.openfoam.com
6 \\/ M anipulation |
7-------------------------------------------------------------------------------
8 Copyright (C) 2011-2012 OpenFOAM Foundation
9-------------------------------------------------------------------------------
10License
11 This file is part of OpenFOAM.
12
13 OpenFOAM is free software: you can redistribute it and/or modify it
14 under the terms of the GNU General Public License as published by
15 the Free Software Foundation, either version 3 of the License, or
16 (at your option) any later version.
17
18 OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
19 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21 for more details.
22
23 You should have received a copy of the GNU General Public License
24 along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
25
26Class
27 Foam::XiModels::algebraic
28
29Description
30 Simple algebraic model for Xi based on Gulders correlation
31 with a linear correction function to give a plausible profile for Xi.
32 See report TR/HGW/10 for details on the Weller two equations model.
33 See \link XiModel.H \endlink for more details on flame wrinkling modelling.
34
35SourceFiles
36 algebraic.C
37
38\*---------------------------------------------------------------------------*/
39
40#ifndef algebraic_H
41#define algebraic_H
42
43#include "XiModel.H"
44#include "XiEqModel.H"
45#include "XiGModel.H"
46
47// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
48
49namespace Foam
51namespace XiModels
52{
53
54/*---------------------------------------------------------------------------*\
55 Class algebraic Declaration
56\*---------------------------------------------------------------------------*/
58class algebraic
59:
60 public XiModel
61{
62 // Private data
63
64 scalar XiShapeCoef;
65
66 autoPtr<XiEqModel> XiEqModel_;
67 autoPtr<XiGModel> XiGModel_;
68
69
70 // Private Member Functions
71
72 //- No copy construct
73 algebraic(const algebraic&) = delete;
74
75 //- No copy assignment
76 void operator=(const algebraic&) = delete;
77
78
79public:
80
81 //- Runtime type information
82 TypeName("algebraic");
83
84
85 // Constructors
86
87 //- Construct from components
89 (
90 const dictionary& XiProperties,
92 const compressible::RASModel& turbulence,
93 const volScalarField& Su,
94 const volScalarField& rho,
95 const volScalarField& b,
97 );
98
99
100 //- Destructor
101 virtual ~algebraic();
102
103
104 // Member Functions
105
106 //- Return the flame diffusivity
107 virtual tmp<volScalarField> Db() const;
108
109 //- Correct the flame-wrinkling Xi
110 virtual void correct();
111
112 //- Update properties from given dictionary
113 virtual bool read(const dictionary& XiProperties);
114
115 //- Write fields of the XiEq model
116 virtual void writeFields()
117 {
118 XiEqModel_().writeFields();
119 }
120
121};
122
123
124// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
125
126} // End namespace XiModels
127} // End namespace Foam
128
129// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
130
131#endif
132
133// ************************************************************************* //
surfaceScalarField & phi
Base-class for all Xi models used by the b-Xi combustion model. See Technical Report SH/RE/01R for de...
Definition: XiModel.H:111
Simple algebraic model for Xi based on Gulders correlation with a linear correction function to give ...
Definition: algebraic.H:60
virtual void writeFields()
Write fields of the XiEq model.
Definition: algebraic.H:115
virtual bool read(const dictionary &XiProperties)
Update properties from given dictionary.
virtual tmp< volScalarField > Db() const
Return the flame diffusivity.
algebraic(const dictionary &XiProperties, const psiuReactionThermo &thermo, const compressible::RASModel &turbulence, const volScalarField &Su, const volScalarField &rho, const volScalarField &b, const surfaceScalarField &phi)
Construct from components.
virtual void correct()
Correct the flame-wrinkling Xi.
TypeName("algebraic")
Runtime type information.
virtual ~algebraic()
Destructor.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Definition: autoPtr.H:66
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
Definition: dictionary.H:126
Foam::psiuReactionThermo.
Basic thermodynamics type based on the use of fitting functions for cp, h, s obtained from the templa...
A class for managing temporary objects.
Definition: tmp.H:65
zeroField Su
Definition: alphaSuSp.H:1
RASModel< EddyDiffusivity< turbulenceModel > > RASModel
Namespace for OpenFOAM.
volScalarField & b
Definition: createFields.H:27
#define TypeName(TypeNameString)
Declare a ClassName() with extra virtual type info.
Definition: typeInfo.H:73