mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of /home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -29,6 +29,36 @@ Description
|
|||||||
Basic sub-grid obstacle flame-wrinking enhancement factor model.
|
Basic sub-grid obstacle flame-wrinking enhancement factor model.
|
||||||
Details supplied by J Puttock 2/7/06.
|
Details supplied by J Puttock 2/7/06.
|
||||||
|
|
||||||
|
<b> Sub-grid flame area generation <\b>
|
||||||
|
|
||||||
|
\f$ n = N - \hat{\dwea{\vec{U}}}.n_{s}.\hat{\dwea{\vec{U}}} \f$
|
||||||
|
\f$ n_{r} = \sqrt{n} \f$
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ \hat{\dwea{\vec{U}}} = \dwea{\vec{U}} / \vert \dwea{\vec{U}}
|
||||||
|
\vert \f$
|
||||||
|
|
||||||
|
\f$ b = \hat{\dwea{\vec{U}}}.B.\hat{\dwea{\vec{U}}} / n_{r} \f$
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ B \f$ is the file "B".
|
||||||
|
|
||||||
|
\f$ N \f$ is the file "N".
|
||||||
|
|
||||||
|
\f$ n_{s} \f$ is the file "ns".
|
||||||
|
|
||||||
|
The flame area enhancement factor \f$ \Xi_{sub} \f$ is expected to
|
||||||
|
approach:
|
||||||
|
|
||||||
|
\f[
|
||||||
|
\Xi_{{sub}_{eq}} =
|
||||||
|
1 + max(2.2 \sqrt{b}, min(0.34 \frac{\vert \dwea{\vec{U}}
|
||||||
|
\vert}{{\vec{U}}^{'}}, 1.6)) \times min(\frac{n}{4}, 1)
|
||||||
|
\f]
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
basicSubGrid.C
|
basicSubGrid.C
|
||||||
|
|
||||||
|
|||||||
@ -25,10 +25,28 @@ License
|
|||||||
Class
|
Class
|
||||||
basicSubGrid
|
basicSubGrid
|
||||||
|
|
||||||
|
|
||||||
Description
|
Description
|
||||||
|
|
||||||
Basic sub-grid obstacle flame-wrinking generation rate coefficient model.
|
Basic sub-grid obstacle flame-wrinking generation rate coefficient model.
|
||||||
Details supplied by J Puttock 2/7/06.
|
Details supplied by J Puttock 2/7/06.
|
||||||
|
|
||||||
|
\f$ G_{sub} \f$ denotes the generation coefficient and it is given by
|
||||||
|
|
||||||
|
\f[
|
||||||
|
G_{sub} = k_{1} /frac{\vert \dwea{\vec{U}} \vert}{L_{obs}}
|
||||||
|
\frac{/Xi_{{sub}_{eq}}-1}{/Xi_{sub}}
|
||||||
|
\f]
|
||||||
|
|
||||||
|
and the removal:
|
||||||
|
|
||||||
|
\f[ - k_{1} /frac{\vert \dwea{\vec{U}} \vert}{L_{sub}}
|
||||||
|
\frac{\Xi_{sub}-1}{\Xi_{sub}} \f]
|
||||||
|
|
||||||
|
Finally, \f$ G_{sub} \f$ is added to generation rate \f$ G_{in} \f$
|
||||||
|
due to the turbulence.
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
basicSubGrid.C
|
basicSubGrid.C
|
||||||
|
|
||||||
|
|||||||
@ -29,6 +29,50 @@ Description
|
|||||||
Basic sub-grid obstacle drag model.
|
Basic sub-grid obstacle drag model.
|
||||||
Details supplied by J Puttock 2/7/06.
|
Details supplied by J Puttock 2/7/06.
|
||||||
|
|
||||||
|
<b> Sub-grid drag term <\b>
|
||||||
|
|
||||||
|
The resistance term (force per unit of volume) is given by:
|
||||||
|
|
||||||
|
\f[
|
||||||
|
R = -\frac{1}{2} \rho \vert \dwea{\vec{U}} \vert \dwea{\vec{U}}.D
|
||||||
|
\f]
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ D \f$ is the tensor field "CR" in \f$ m^{-1} \f$
|
||||||
|
|
||||||
|
This is term is treated implicitly in UEqn.H
|
||||||
|
|
||||||
|
<b> Sub-grid turbulence generation <\b>
|
||||||
|
|
||||||
|
The turbulence source term \f$ G_{R} \f$ occurring in the
|
||||||
|
\f$ \kappa-\epsilon \f$ equations for the generation of turbulence due
|
||||||
|
to interaction with unresolved obstacles :
|
||||||
|
|
||||||
|
\f$ G_{R} = C_{s}\beta_{\nu}
|
||||||
|
\mu_{eff} A_{w}^{2}(\dwea{\vec{U}}-\dwea{\vec{U}_{s}})^2 + \frac{1}{2}
|
||||||
|
\rho \vert \dwea{\vec{U}} \vert \dwea{\vec{U}}.T.\dwea{\vec{U}} \f$
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ C_{s} \f$ = 1
|
||||||
|
|
||||||
|
\f$ \beta_{\nu} \f$ is the volume porosity (file "betav").
|
||||||
|
|
||||||
|
\f$ \mu_{eff} \f$ is the effective viscosity.
|
||||||
|
|
||||||
|
\f$ A_{w}^{2}\f$ is the obstacle surface area per unit of volume
|
||||||
|
(file "Aw").
|
||||||
|
|
||||||
|
\f$ \dwea{\vec{U}_{s}} \f$ is the slip velocity and is considered
|
||||||
|
\f$ \frac{1}{2}. \dwea{\vec{U}} \f$.
|
||||||
|
|
||||||
|
\f$ T \f$ is a tensor in the file CT.
|
||||||
|
|
||||||
|
The term \f$ G_{R} \f$ is treated explicitly in the \f$ \kappa-\epsilon
|
||||||
|
\f$ Eqs in the PDRkEpsilon.C file.
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
basic.C
|
basic.C
|
||||||
|
|
||||||
@ -40,7 +84,6 @@ SourceFiles
|
|||||||
#include "PDRDragModel.H"
|
#include "PDRDragModel.H"
|
||||||
#include "XiEqModel.H"
|
#include "XiEqModel.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
{
|
{
|
||||||
|
|||||||
@ -26,7 +26,17 @@ Class
|
|||||||
PDRkEpsilon
|
PDRkEpsilon
|
||||||
|
|
||||||
Description
|
Description
|
||||||
Standard k-epsilon turbulence model.
|
Standard k-epsilon turbulence model with additional source terms
|
||||||
|
corresponding to PDR basic drag model (basic.H)
|
||||||
|
|
||||||
|
The turbulence source term \f$ G_{R} \f$ appears in the
|
||||||
|
\f$ \kappa-\epsilon \f$ equation for the generation of turbulence due to
|
||||||
|
interaction with unresolved obstacles.
|
||||||
|
|
||||||
|
In the \f$ \epsilon \f$ equation \f$ C_{1} G_{R} \f$ is added as a source
|
||||||
|
term.
|
||||||
|
|
||||||
|
In the \f$ \kappa \f$ equation \f$ G_{R} \f$ is added as a source term.
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
PDRkEpsilon.C
|
PDRkEpsilon.C
|
||||||
|
|||||||
@ -27,6 +27,57 @@ Class
|
|||||||
|
|
||||||
Description
|
Description
|
||||||
Base-class for all Xi models used by the b-Xi combustion model.
|
Base-class for all Xi models used by the b-Xi combustion model.
|
||||||
|
See Technical Report SH/RE/01R for details on the PDR modelling.
|
||||||
|
|
||||||
|
Xi is given through an algebraic expression (algebraic.H),
|
||||||
|
by solving a transport equation (transport.H) or a fixed value (fixed.H).
|
||||||
|
See report TR/HGW/10 for details on the Weller two equations model.
|
||||||
|
|
||||||
|
In the algebraic and transport methods \f$\Xi_{eq}\f$ is calculated in
|
||||||
|
similar way. In the algebraic approach, \f$\Xi_{eq}\f$ is the value used in
|
||||||
|
the \f$ b \f$ transport equation.
|
||||||
|
|
||||||
|
\f$\Xi_{eq}\f$ is calculated as follows:
|
||||||
|
|
||||||
|
\f$\Xi_{eq} = 1 + (1 + 2\Xi_{coeff}(0.5 - \dwea{b}))(\Xi^* - 1)\f$
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ \dwea{b} \f$ is the regress variable.
|
||||||
|
|
||||||
|
\f$ \Xi^* \f$ is the total equilibrium wrinkling combining the effects
|
||||||
|
of the flame inestability and turbulence interaction and is given by
|
||||||
|
|
||||||
|
\f[
|
||||||
|
\Xi^* = \frac {R}{R - G_\eta - G_{in}}
|
||||||
|
\f]
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ G_\eta \f$ is the generation rate of wrinkling due to turbulence
|
||||||
|
interaction.
|
||||||
|
|
||||||
|
\f$ G_{in} = \kappa \rho_{u}/\rho_{b} \f$ is the generation
|
||||||
|
rate due to the flame inestability.
|
||||||
|
|
||||||
|
By adding the removal rates of the two effects:
|
||||||
|
|
||||||
|
\f[
|
||||||
|
R = G_\eta \frac{\Xi_{\eta_{eq}}}{\Xi_{\eta_{eq}} - 1}
|
||||||
|
+ G_{in} \frac{\Xi_{{in}_{eq}}}{\Xi_{{in}_{eq}} - 1}
|
||||||
|
\f]
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ R \f$ is the total removal.
|
||||||
|
|
||||||
|
\f$ G_\eta \f$ is a model constant.
|
||||||
|
|
||||||
|
\f$ \Xi_{\eta_{eq}} \f$ is the flame wrinkling due to turbulence.
|
||||||
|
|
||||||
|
\f$ \Xi_{{in}_{eq}} \f$ is the equilibrium level of the flame wrinkling
|
||||||
|
generated by inestability. It is a constant (default 2.5).
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
XiModel.C
|
XiModel.C
|
||||||
@ -51,6 +102,8 @@ namespace Foam
|
|||||||
Class XiModel Declaration
|
Class XiModel Declaration
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class XiModel
|
class XiModel
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
@ -28,6 +28,33 @@ Class
|
|||||||
Description
|
Description
|
||||||
Laminar flame speed obtained from the SCOPE correlation.
|
Laminar flame speed obtained from the SCOPE correlation.
|
||||||
|
|
||||||
|
Seven parameters are specified in terms of polynomial functions of
|
||||||
|
stoichiometry. Two polynomials are fitted, covering different parts of the
|
||||||
|
flammable range. If the mixture is outside the fitted range, linear
|
||||||
|
interpolation is used between the extreme of the polynomio and the upper or
|
||||||
|
lower flammable limit with the Markstein number constant.
|
||||||
|
|
||||||
|
Variations of pressure and temperature from the reference values are taken
|
||||||
|
into account through \f$ pexp \f$ and \f$ texp \f$
|
||||||
|
|
||||||
|
The laminar burning velocity fitting polynomial is:
|
||||||
|
|
||||||
|
\f$ Su = a_{0}(1+a_{1}x+K+..a_{i}x^{i}..+a_{6}x^{6}) (p/p_{ref})^{pexp}
|
||||||
|
(T/T_{ref})^{texp} \f$
|
||||||
|
|
||||||
|
where:
|
||||||
|
|
||||||
|
\f$ a_{i} \f$ are the polinomial coefficients.
|
||||||
|
|
||||||
|
\f$ pexp \f$ and \f$ texp \f$ are the pressure and temperature factors
|
||||||
|
respectively.
|
||||||
|
|
||||||
|
\f$ x \f$ is the equivalence ratio.
|
||||||
|
|
||||||
|
\f$ T_{ref} \f$ and \f$ p_{ref} \f$ are the temperature and pressure
|
||||||
|
references for the laminar burning velocity.
|
||||||
|
|
||||||
|
|
||||||
SourceFiles
|
SourceFiles
|
||||||
SCOPELaminarFlameSpeed.C
|
SCOPELaminarFlameSpeed.C
|
||||||
|
|
||||||
@ -125,7 +152,7 @@ class SCOPE
|
|||||||
// corrected for temperature and pressure dependence
|
// corrected for temperature and pressure dependence
|
||||||
inline scalar Su0pTphi(scalar p, scalar Tu, scalar phi) const;
|
inline scalar Su0pTphi(scalar p, scalar Tu, scalar phi) const;
|
||||||
|
|
||||||
//- Laminar flame speed evaluated from the given uniform
|
//- Laminar flame speed evaluated from the given uniform
|
||||||
// equivalence ratio corrected for temperature and pressure dependence
|
// equivalence ratio corrected for temperature and pressure dependence
|
||||||
tmp<volScalarField> Su0pTphi
|
tmp<volScalarField> Su0pTphi
|
||||||
(
|
(
|
||||||
@ -134,7 +161,7 @@ class SCOPE
|
|||||||
scalar phi
|
scalar phi
|
||||||
) const;
|
) const;
|
||||||
|
|
||||||
//- Laminar flame speed evaluated from the given equivalence ratio
|
//- Laminar flame speed evaluated from the given equivalence ratio
|
||||||
// distribution corrected for temperature and pressure dependence
|
// distribution corrected for temperature and pressure dependence
|
||||||
tmp<volScalarField> Su0pTphi
|
tmp<volScalarField> Su0pTphi
|
||||||
(
|
(
|
||||||
@ -144,7 +171,7 @@ class SCOPE
|
|||||||
) const;
|
) const;
|
||||||
|
|
||||||
//- Return the Markstein number
|
//- Return the Markstein number
|
||||||
// evaluated from the given equivalence ratio
|
// evaluated from the given equivalence ratio
|
||||||
tmp<volScalarField> Ma(const volScalarField& phi) const;
|
tmp<volScalarField> Ma(const volScalarField& phi) const;
|
||||||
|
|
||||||
//- Construct as copy (not implemented)
|
//- Construct as copy (not implemented)
|
||||||
|
|||||||
@ -50,9 +50,9 @@ then
|
|||||||
*/applications/solvers/*.C | */applications/utilities/*.C )
|
*/applications/solvers/*.C | */applications/utilities/*.C )
|
||||||
awkScript=$WM_PROJECT_DIR/bin/tools/doxyFilt-top.awk
|
awkScript=$WM_PROJECT_DIR/bin/tools/doxyFilt-top.awk
|
||||||
;;
|
;;
|
||||||
*/applications/solvers/*.H | */applications/utilities/*.H )
|
# */applications/solvers/*.H | */applications/utilities/*.H )
|
||||||
awkScript=$WM_PROJECT_DIR/bin/tools/doxyFilt-ignore.awk
|
# awkScript=$WM_PROJECT_DIR/bin/tools/doxyFilt-ignore.awk
|
||||||
;;
|
# ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
awk -f $awkScript $1 | \
|
awk -f $awkScript $1 | \
|
||||||
|
|||||||
@ -14,6 +14,16 @@
|
|||||||
# Project related configuration options
|
# Project related configuration options
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
#--------------------------------
|
||||||
|
# PATH FOR OPEN CFD LATEX MACROS
|
||||||
|
#-------------------------------
|
||||||
|
|
||||||
|
@INLUDE_PATH = $(TEXINPUTS)
|
||||||
|
@INLUDE_PATH += $(BIBINPUTS)
|
||||||
|
@INLUDE_PATH += $(BSTINPUTS)
|
||||||
|
|
||||||
|
|
||||||
# This tag specifies the encoding used for all characters in the config file that
|
# This tag specifies the encoding used for all characters in the config file that
|
||||||
# follow. The default is UTF-8 which is also the encoding used for all text before
|
# follow. The default is UTF-8 which is also the encoding used for all text before
|
||||||
# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into
|
# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into
|
||||||
@ -477,9 +487,11 @@ WARN_LOGFILE =
|
|||||||
# directories like "/usr/src/myproject". Separate the files or directories
|
# directories like "/usr/src/myproject". Separate the files or directories
|
||||||
# with spaces.
|
# with spaces.
|
||||||
|
|
||||||
INPUT = $(WM_PROJECT_DIR)/src \
|
INPUT = $(WM_PROJECT_DIR)/src \
|
||||||
$(WM_PROJECT_DIR)/applications/utilities \
|
$(WM_PROJECT_DIR)/applications/utilities \
|
||||||
$(WM_PROJECT_DIR)/applications/solvers
|
$(WM_PROJECT_DIR)/applications/solvers
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# This tag can be used to specify the character encoding of the source files that
|
# This tag can be used to specify the character encoding of the source files that
|
||||||
# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default
|
# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default
|
||||||
@ -536,7 +548,9 @@ EXCLUDE_SYMBOLS =
|
|||||||
# directories that contain example code fragments that are included (see
|
# directories that contain example code fragments that are included (see
|
||||||
# the \include command).
|
# the \include command).
|
||||||
|
|
||||||
EXAMPLE_PATH =
|
EXAMPLE_PATH = $(TEXINPUTS) \
|
||||||
|
$(BIBINPUTS) \
|
||||||
|
$(BSTINPUTS)
|
||||||
|
|
||||||
# If the value of the EXAMPLE_PATH tag contains directories, you can use the
|
# If the value of the EXAMPLE_PATH tag contains directories, you can use the
|
||||||
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
|
# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
|
||||||
@ -824,7 +838,8 @@ PAPER_TYPE = a4wide
|
|||||||
# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
|
# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
|
||||||
# packages that should be included in the LaTeX output.
|
# packages that should be included in the LaTeX output.
|
||||||
|
|
||||||
EXTRA_PACKAGES =
|
EXTRA_PACKAGES = conditionalEqns finiteVolume algorithmic tensorCommon \
|
||||||
|
tensorOperator tensorEquation
|
||||||
|
|
||||||
# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
|
# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
|
||||||
# the generated latex document. The header should contain everything until
|
# the generated latex document. The header should contain everything until
|
||||||
|
|||||||
@ -187,7 +187,7 @@ case MPICH-GM:
|
|||||||
setenv FOAM_MPI_LIBBIN $FOAM_LIBBIN/mpich-gm
|
setenv FOAM_MPI_LIBBIN $FOAM_LIBBIN/mpich-gm
|
||||||
breaksw
|
breaksw
|
||||||
|
|
||||||
case MPICH-GM:
|
case HPMPI:
|
||||||
setenv MPI_HOME /opt/hpmpi
|
setenv MPI_HOME /opt/hpmpi
|
||||||
setenv MPI_ARCH_PATH $MPI_HOME
|
setenv MPI_ARCH_PATH $MPI_HOME
|
||||||
setenv MPICH_ROOT=$MPI_ARCH_PATH
|
setenv MPICH_ROOT=$MPI_ARCH_PATH
|
||||||
|
|||||||
@ -49,7 +49,7 @@ Foam::laplaceFilter::laplaceFilter(const fvMesh& mesh, scalar widthCoeff)
|
|||||||
(
|
(
|
||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"anisotropicFilterCoeff",
|
"laplaceFilterCoeff",
|
||||||
mesh.time().timeName(),
|
mesh.time().timeName(),
|
||||||
mesh
|
mesh
|
||||||
),
|
),
|
||||||
@ -70,7 +70,7 @@ Foam::laplaceFilter::laplaceFilter(const fvMesh& mesh, const dictionary& bd)
|
|||||||
(
|
(
|
||||||
IOobject
|
IOobject
|
||||||
(
|
(
|
||||||
"anisotropicFilterCoeff",
|
"laplaceFilterCoeff",
|
||||||
mesh.time().timeName(),
|
mesh.time().timeName(),
|
||||||
mesh
|
mesh
|
||||||
),
|
),
|
||||||
|
|||||||
Reference in New Issue
Block a user