mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of ssh://noisy/home/noisy3/OpenFOAM/OpenFOAM-dev
This commit is contained in:
3
applications/utilities/mesh/advanced/PDRMesh/Make/files
Normal file
3
applications/utilities/mesh/advanced/PDRMesh/Make/files
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
PDRMesh.C
|
||||||
|
|
||||||
|
EXE = $(FOAM_APPBIN)/PDRMesh
|
||||||
11
applications/utilities/mesh/advanced/PDRMesh/Make/options
Normal file
11
applications/utilities/mesh/advanced/PDRMesh/Make/options
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
EXE_INC = \
|
||||||
|
-I$(LIB_SRC)/meshTools/lnInclude \
|
||||||
|
-I$(LIB_SRC)/dynamicMesh/lnInclude \
|
||||||
|
-I$(LIB_SRC)/finiteVolume/lnInclude
|
||||||
|
|
||||||
|
EXE_LIBS = \
|
||||||
|
-lmeshTools \
|
||||||
|
-ldynamicMesh \
|
||||||
|
-lfiniteVolume \
|
||||||
|
-lcompressibleRASModels
|
||||||
|
|
||||||
1181
applications/utilities/mesh/advanced/PDRMesh/PDRMesh.C
Normal file
1181
applications/utilities/mesh/advanced/PDRMesh/PDRMesh.C
Normal file
File diff suppressed because it is too large
Load Diff
40
applications/utilities/mesh/advanced/PDRMesh/PDRMeshDict
Normal file
40
applications/utilities/mesh/advanced/PDRMesh/PDRMeshDict
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object PDRMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
//- Per faceSet the patch the faces should go into blocked baffles
|
||||||
|
blockedFaces ((blockedFacesSet blockedFaces));
|
||||||
|
|
||||||
|
//- Per faceSet the patch the faces should go into coupled baffles
|
||||||
|
coupledFaces
|
||||||
|
{
|
||||||
|
coupledFacesSet
|
||||||
|
{
|
||||||
|
wallPatchName baffleWall;
|
||||||
|
cyclicMasterPatchName baffleCyclic_half0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//- Name of cellSet that holds the cells to fully remove
|
||||||
|
blockedCells blockedCellsSet;
|
||||||
|
|
||||||
|
//- All exposed faces that are not specified in blockedFaces go into
|
||||||
|
// this patch
|
||||||
|
defaultPatch outer;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
if [ ! -d ${WM_THIRD_PARTY_DIR}/tecio ]
|
||||||
|
then
|
||||||
|
echo "Did not find tecio in ${WM_THIRD_PARTY_DIR}. Not building foamToTecplot360."
|
||||||
|
else
|
||||||
|
wmake
|
||||||
|
fi
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------- end-of-file
|
||||||
46
etc/apps/paraview3/cshrc-EXAMPLE
Normal file
46
etc/apps/paraview3/cshrc-EXAMPLE
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
#----------------------------------*-sh-*--------------------------------------
|
||||||
|
# ========= |
|
||||||
|
# \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
# \\ / O peration |
|
||||||
|
# \\ / A nd | Copyright (C) 2011-2011 OpenCFD Ltd.
|
||||||
|
# \\/ M anipulation |
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
# License
|
||||||
|
# This file is part of OpenFOAM.
|
||||||
|
#
|
||||||
|
# OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
# under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
# for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#
|
||||||
|
# File
|
||||||
|
# paraview3/cshrc-EXAMPLE
|
||||||
|
#
|
||||||
|
# Description
|
||||||
|
# Example of chaining to the standard paraview3/cshrc with a
|
||||||
|
# different ParaView_VERSION
|
||||||
|
#
|
||||||
|
# Note
|
||||||
|
# This file could be copied to a user or site location, but should never
|
||||||
|
# replace the default shipped version as this will cause an infinite loop
|
||||||
|
#
|
||||||
|
#------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#
|
||||||
|
# Use other (shipped) cshrc with a different ParaView_VERSION
|
||||||
|
#
|
||||||
|
|
||||||
|
set foamFile=`$WM_PROJECT_DIR/bin/foamEtcFile -mode o apps/paraview3/cshrc`
|
||||||
|
if ( $status == 0 ) source $foamFile ParaView_VERSION=3.9.0
|
||||||
|
|
||||||
|
unset foamFile
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
@ -112,6 +112,7 @@ $(constraintFvPatchFields)/wedge/wedgeFvPatchScalarField.C
|
|||||||
|
|
||||||
derivedFvPatchFields = $(fvPatchFields)/derived
|
derivedFvPatchFields = $(fvPatchFields)/derived
|
||||||
$(derivedFvPatchFields)/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.C
|
$(derivedFvPatchFields)/activeBaffleVelocity/activeBaffleVelocityFvPatchVectorField.C
|
||||||
|
$(derivedFvPatchFields)/activePressureForceBaffleVelocity/activePressureForceBaffleVelocityFvPatchVectorField.C
|
||||||
$(derivedFvPatchFields)/advective/advectiveFvPatchFields.C
|
$(derivedFvPatchFields)/advective/advectiveFvPatchFields.C
|
||||||
|
|
||||||
$(derivedFvPatchFields)/codedFixedValue/codedFixedValueFvPatchScalarField.C
|
$(derivedFvPatchFields)/codedFixedValue/codedFixedValueFvPatchScalarField.C
|
||||||
|
|||||||
@ -0,0 +1,385 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||||
|
\\/ M anipulation |
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
License
|
||||||
|
This file is part of OpenFOAM.
|
||||||
|
|
||||||
|
OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include "activePressureForceBaffleVelocityFvPatchVectorField.H"
|
||||||
|
#include "addToRunTimeSelectionTable.H"
|
||||||
|
#include "volFields.H"
|
||||||
|
#include "surfaceFields.H"
|
||||||
|
#include "cyclicFvPatch.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const fvPatch& p,
|
||||||
|
const DimensionedField<vector, volMesh>& iF
|
||||||
|
)
|
||||||
|
:
|
||||||
|
fixedValueFvPatchVectorField(p, iF),
|
||||||
|
pName_("p"),
|
||||||
|
cyclicPatchName_(),
|
||||||
|
cyclicPatchLabel_(-1),
|
||||||
|
orientation_(1),
|
||||||
|
initWallSf_(0),
|
||||||
|
initCyclicSf_(0),
|
||||||
|
nbrCyclicSf_(0),
|
||||||
|
openFraction_(0),
|
||||||
|
openingTime_(0),
|
||||||
|
maxOpenFractionDelta_(0),
|
||||||
|
curTimeIndex_(-1),
|
||||||
|
minThresholdValue_(0),
|
||||||
|
fBased_(1),
|
||||||
|
baffleActivated_(0)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField& ptf,
|
||||||
|
const fvPatch& p,
|
||||||
|
const DimensionedField<vector, volMesh>& iF,
|
||||||
|
const fvPatchFieldMapper& mapper
|
||||||
|
)
|
||||||
|
:
|
||||||
|
fixedValueFvPatchVectorField(ptf, p, iF, mapper),
|
||||||
|
pName_(ptf.pName_),
|
||||||
|
cyclicPatchName_(ptf.cyclicPatchName_),
|
||||||
|
cyclicPatchLabel_(ptf.cyclicPatchLabel_),
|
||||||
|
orientation_(ptf.orientation_),
|
||||||
|
initWallSf_(ptf.initWallSf_),
|
||||||
|
initCyclicSf_(ptf.initCyclicSf_),
|
||||||
|
nbrCyclicSf_(ptf.nbrCyclicSf_),
|
||||||
|
openFraction_(ptf.openFraction_),
|
||||||
|
openingTime_(ptf.openingTime_),
|
||||||
|
maxOpenFractionDelta_(ptf.maxOpenFractionDelta_),
|
||||||
|
curTimeIndex_(-1),
|
||||||
|
minThresholdValue_(ptf.minThresholdValue_),
|
||||||
|
fBased_(ptf.fBased_),
|
||||||
|
baffleActivated_(ptf.baffleActivated_)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const fvPatch& p,
|
||||||
|
const DimensionedField<vector, volMesh>& iF,
|
||||||
|
const dictionary& dict
|
||||||
|
)
|
||||||
|
:
|
||||||
|
fixedValueFvPatchVectorField(p, iF),
|
||||||
|
pName_("p"),
|
||||||
|
cyclicPatchName_(dict.lookup("cyclicPatch")),
|
||||||
|
cyclicPatchLabel_(p.patch().boundaryMesh().findPatchID(cyclicPatchName_)),
|
||||||
|
orientation_(readLabel(dict.lookup("orientation"))),
|
||||||
|
initWallSf_(0),
|
||||||
|
initCyclicSf_(0),
|
||||||
|
nbrCyclicSf_(0),
|
||||||
|
openFraction_(readScalar(dict.lookup("openFraction"))),
|
||||||
|
openingTime_(readScalar(dict.lookup("openingTime"))),
|
||||||
|
maxOpenFractionDelta_(readScalar(dict.lookup("maxOpenFractionDelta"))),
|
||||||
|
curTimeIndex_(-1),
|
||||||
|
minThresholdValue_(readScalar(dict.lookup("minThresholdValue"))),
|
||||||
|
fBased_(readBool(dict.lookup("forceBased"))),
|
||||||
|
baffleActivated_(0)
|
||||||
|
{
|
||||||
|
fvPatchVectorField::operator=(vector::zero);
|
||||||
|
|
||||||
|
if (p.size() > 0)
|
||||||
|
{
|
||||||
|
initWallSf_ = p.Sf();
|
||||||
|
initCyclicSf_ = p.boundaryMesh()[cyclicPatchLabel_].Sf();
|
||||||
|
nbrCyclicSf_ = refCast<const cyclicFvPatch>
|
||||||
|
(
|
||||||
|
p.boundaryMesh()[cyclicPatchLabel_]
|
||||||
|
).neighbFvPatch().Sf();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dict.found("p"))
|
||||||
|
{
|
||||||
|
dict.lookup("p") >> pName_;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField& ptf
|
||||||
|
)
|
||||||
|
:
|
||||||
|
fixedValueFvPatchVectorField(ptf),
|
||||||
|
pName_(ptf.pName_),
|
||||||
|
cyclicPatchName_(ptf.cyclicPatchName_),
|
||||||
|
cyclicPatchLabel_(ptf.cyclicPatchLabel_),
|
||||||
|
orientation_(ptf.orientation_),
|
||||||
|
initWallSf_(ptf.initWallSf_),
|
||||||
|
initCyclicSf_(ptf.initCyclicSf_),
|
||||||
|
nbrCyclicSf_(ptf.nbrCyclicSf_),
|
||||||
|
openFraction_(ptf.openFraction_),
|
||||||
|
openingTime_(ptf.openingTime_),
|
||||||
|
maxOpenFractionDelta_(ptf.maxOpenFractionDelta_),
|
||||||
|
curTimeIndex_(-1),
|
||||||
|
minThresholdValue_(ptf.minThresholdValue_),
|
||||||
|
fBased_(ptf.fBased_),
|
||||||
|
baffleActivated_(ptf.baffleActivated_)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField& ptf,
|
||||||
|
const DimensionedField<vector, volMesh>& iF
|
||||||
|
)
|
||||||
|
:
|
||||||
|
fixedValueFvPatchVectorField(ptf, iF),
|
||||||
|
pName_(ptf.pName_),
|
||||||
|
cyclicPatchName_(ptf.cyclicPatchName_),
|
||||||
|
cyclicPatchLabel_(ptf.cyclicPatchLabel_),
|
||||||
|
orientation_(ptf.orientation_),
|
||||||
|
initWallSf_(ptf.initWallSf_),
|
||||||
|
initCyclicSf_(ptf.initCyclicSf_),
|
||||||
|
nbrCyclicSf_(ptf.nbrCyclicSf_),
|
||||||
|
openFraction_(ptf.openFraction_),
|
||||||
|
openingTime_(ptf.openingTime_),
|
||||||
|
maxOpenFractionDelta_(ptf.maxOpenFractionDelta_),
|
||||||
|
curTimeIndex_(-1),
|
||||||
|
minThresholdValue_(ptf.minThresholdValue_),
|
||||||
|
fBased_(ptf.fBased_),
|
||||||
|
baffleActivated_(ptf.baffleActivated_)
|
||||||
|
{}
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
void Foam::activePressureForceBaffleVelocityFvPatchVectorField::autoMap
|
||||||
|
(
|
||||||
|
const fvPatchFieldMapper& m
|
||||||
|
)
|
||||||
|
{
|
||||||
|
fixedValueFvPatchVectorField::autoMap(m);
|
||||||
|
|
||||||
|
//- Note: cannot map field from cyclic patch anyway so just recalculate
|
||||||
|
// Areas should be consistent when doing autoMap except in case of
|
||||||
|
// topo changes.
|
||||||
|
//- Note: we don't want to use Sf here since triggers rebuilding of
|
||||||
|
// fvMesh::S() which will give problems when mapped (since already
|
||||||
|
// on new mesh)
|
||||||
|
forAll (patch().boundaryMesh().mesh().faceAreas(), i)
|
||||||
|
{
|
||||||
|
if (mag(patch().boundaryMesh().mesh().faceAreas()[i]) == 0)
|
||||||
|
{
|
||||||
|
Info << "faceArea[active] "<< i << endl;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (patch().size() > 0)
|
||||||
|
{
|
||||||
|
const vectorField& areas = patch().boundaryMesh().mesh().faceAreas();
|
||||||
|
initWallSf_ = patch().patchSlice(areas);
|
||||||
|
initCyclicSf_ = patch().boundaryMesh()
|
||||||
|
[
|
||||||
|
cyclicPatchLabel_
|
||||||
|
].patchSlice(areas);
|
||||||
|
nbrCyclicSf_ = refCast<const cyclicFvPatch>
|
||||||
|
(
|
||||||
|
patch().boundaryMesh()
|
||||||
|
[
|
||||||
|
cyclicPatchLabel_
|
||||||
|
]
|
||||||
|
).neighbFvPatch().patch().patchSlice(areas);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Foam::activePressureForceBaffleVelocityFvPatchVectorField::rmap
|
||||||
|
(
|
||||||
|
const fvPatchVectorField& ptf,
|
||||||
|
const labelList& addr
|
||||||
|
)
|
||||||
|
{
|
||||||
|
fixedValueFvPatchVectorField::rmap(ptf, addr);
|
||||||
|
|
||||||
|
// See autoMap.
|
||||||
|
const vectorField& areas = patch().boundaryMesh().mesh().faceAreas();
|
||||||
|
initWallSf_ = patch().patchSlice(areas);
|
||||||
|
initCyclicSf_ = patch().boundaryMesh()
|
||||||
|
[
|
||||||
|
cyclicPatchLabel_
|
||||||
|
].patchSlice(areas);
|
||||||
|
nbrCyclicSf_ = refCast<const cyclicFvPatch>
|
||||||
|
(
|
||||||
|
patch().boundaryMesh()
|
||||||
|
[
|
||||||
|
cyclicPatchLabel_
|
||||||
|
]
|
||||||
|
).neighbFvPatch().patch().patchSlice(areas);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Foam::activePressureForceBaffleVelocityFvPatchVectorField::updateCoeffs()
|
||||||
|
{
|
||||||
|
if (updated())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// Execute the change to the openFraction only once per time-step
|
||||||
|
if (curTimeIndex_ != this->db().time().timeIndex())
|
||||||
|
{
|
||||||
|
const volScalarField& p = db().lookupObject<volScalarField>
|
||||||
|
(
|
||||||
|
pName_
|
||||||
|
);
|
||||||
|
|
||||||
|
const fvPatch& cyclicPatch = patch().boundaryMesh()[cyclicPatchLabel_];
|
||||||
|
const labelList& cyclicFaceCells = cyclicPatch.patch().faceCells();
|
||||||
|
const fvPatch& nbrPatch = refCast<const cyclicFvPatch>
|
||||||
|
(
|
||||||
|
cyclicPatch
|
||||||
|
).neighbFvPatch();
|
||||||
|
|
||||||
|
const labelList& nbrFaceCells = nbrPatch.patch().faceCells();
|
||||||
|
|
||||||
|
scalar valueDiff = 0;
|
||||||
|
|
||||||
|
if (fBased_)
|
||||||
|
{
|
||||||
|
// Add this side
|
||||||
|
forAll(cyclicFaceCells, facei)
|
||||||
|
{
|
||||||
|
valueDiff +=p[cyclicFaceCells[facei]]*mag(initCyclicSf_[facei]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove other side
|
||||||
|
forAll(nbrFaceCells, facei)
|
||||||
|
{
|
||||||
|
valueDiff -=p[nbrFaceCells[facei]]*mag(initCyclicSf_[facei]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else //pressure based
|
||||||
|
{
|
||||||
|
forAll(cyclicFaceCells, facei)
|
||||||
|
{
|
||||||
|
valueDiff += p[cyclicFaceCells[facei]];
|
||||||
|
}
|
||||||
|
|
||||||
|
forAll(nbrFaceCells, facei)
|
||||||
|
{
|
||||||
|
valueDiff -= p[nbrFaceCells[facei]];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((mag(valueDiff) > mag(minThresholdValue_) || baffleActivated_))
|
||||||
|
{
|
||||||
|
openFraction_ =
|
||||||
|
max(
|
||||||
|
min(
|
||||||
|
openFraction_
|
||||||
|
+ max
|
||||||
|
(
|
||||||
|
this->db().time().deltaT().value()/openingTime_,
|
||||||
|
maxOpenFractionDelta_
|
||||||
|
)*(orientation_),
|
||||||
|
1 - 1e-6
|
||||||
|
),
|
||||||
|
1e-6
|
||||||
|
);
|
||||||
|
|
||||||
|
baffleActivated_ = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
openFraction_ = max(min(1 - 1e-6, openFraction_), 1e-6);
|
||||||
|
}
|
||||||
|
|
||||||
|
Info<< "Open fraction = " << openFraction_ << endl;
|
||||||
|
Info<< "Pressure difference = " << valueDiff << endl;
|
||||||
|
|
||||||
|
vectorField::subField Sfw = patch().patch().faceAreas();
|
||||||
|
vectorField newSfw = (1 - openFraction_)*initWallSf_;
|
||||||
|
forAll(Sfw, facei)
|
||||||
|
{
|
||||||
|
Sfw[facei] = newSfw[facei];
|
||||||
|
}
|
||||||
|
const_cast<scalarField&>(patch().magSf()) = mag(patch().Sf());
|
||||||
|
|
||||||
|
// Update owner side of cyclic
|
||||||
|
const_cast<vectorField&>(cyclicPatch.Sf()) =
|
||||||
|
openFraction_*initCyclicSf_;
|
||||||
|
|
||||||
|
const_cast<scalarField&>(cyclicPatch.magSf()) =
|
||||||
|
mag(cyclicPatch.Sf());
|
||||||
|
|
||||||
|
// Update neighbour side of cyclic
|
||||||
|
const_cast<vectorField&>(nbrPatch.Sf()) =
|
||||||
|
openFraction_*nbrCyclicSf_;
|
||||||
|
|
||||||
|
const_cast<scalarField&>(nbrPatch.magSf()) =
|
||||||
|
mag(nbrPatch.Sf());
|
||||||
|
|
||||||
|
curTimeIndex_ = this->db().time().timeIndex();
|
||||||
|
}
|
||||||
|
|
||||||
|
fixedValueFvPatchVectorField::updateCoeffs();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void Foam::activePressureForceBaffleVelocityFvPatchVectorField::
|
||||||
|
write(Ostream& os) const
|
||||||
|
{
|
||||||
|
fvPatchVectorField::write(os);
|
||||||
|
os.writeKeyword("cyclicPatch")
|
||||||
|
<< cyclicPatchName_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("orientation")
|
||||||
|
<< orientation_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("openingTime")
|
||||||
|
<< openingTime_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("maxOpenFractionDelta")
|
||||||
|
<< maxOpenFractionDelta_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("openFraction")
|
||||||
|
<< openFraction_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("p")
|
||||||
|
<< pName_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("minThresholdValue")
|
||||||
|
<< minThresholdValue_ << token::END_STATEMENT << nl;
|
||||||
|
os.writeKeyword("forceBased")
|
||||||
|
<< fBased_ << token::END_STATEMENT << nl;
|
||||||
|
writeEntry("value", os);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
namespace Foam
|
||||||
|
{
|
||||||
|
makePatchTypeField
|
||||||
|
(
|
||||||
|
fvPatchVectorField,
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,210 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
========= |
|
||||||
|
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||||
|
\\ / O peration |
|
||||||
|
\\ / A nd | Copyright (C) 2010-2011 OpenCFD Ltd.
|
||||||
|
\\/ M anipulation |
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
License
|
||||||
|
This file is part of OpenFOAM.
|
||||||
|
|
||||||
|
OpenFOAM is free software: you can redistribute it and/or modify it
|
||||||
|
under the terms of the GNU General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
|
||||||
|
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||||
|
for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
Class
|
||||||
|
Foam::activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
|
||||||
|
Description
|
||||||
|
Bounday which emulates the operation of a release pressure panel.
|
||||||
|
|
||||||
|
The boundary condition modifies mesh areas based on difference
|
||||||
|
of pressure or force face beween both sides of the panel. Once opened the
|
||||||
|
panel continues to open at a fixed rate.
|
||||||
|
|
||||||
|
SourceFiles
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField.C
|
||||||
|
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#ifndef activePressureForceBaffleVelocityFvPatchVectorField_H
|
||||||
|
#define activePressureForceBaffleVelocityFvPatchVectorField_H
|
||||||
|
|
||||||
|
#include "fvPatchFields.H"
|
||||||
|
#include "fixedValueFvPatchFields.H"
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
namespace Foam
|
||||||
|
{
|
||||||
|
|
||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
Class activePressureForceBaffleVelocityFvPatch Declaration
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
class activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
:
|
||||||
|
public fixedValueFvPatchVectorField
|
||||||
|
{
|
||||||
|
// Private data
|
||||||
|
|
||||||
|
//- Name of the pressure field used to calculate the force
|
||||||
|
// on the active baffle
|
||||||
|
word pName_;
|
||||||
|
|
||||||
|
//- Name of the cyclic patch used when the active baffle is open
|
||||||
|
word cyclicPatchName_;
|
||||||
|
|
||||||
|
//- Index of the cyclic patch used when the active baffle is open
|
||||||
|
label cyclicPatchLabel_;
|
||||||
|
|
||||||
|
//- Orientation (1 or -1) of the active baffle patch.
|
||||||
|
// Used to change the direction of opening without the need for
|
||||||
|
// reordering the patch faces
|
||||||
|
label orientation_;
|
||||||
|
|
||||||
|
//- Initial wall patch areas
|
||||||
|
vectorField initWallSf_;
|
||||||
|
|
||||||
|
//- Initial cyclic patch areas
|
||||||
|
vectorField initCyclicSf_;
|
||||||
|
|
||||||
|
//- Initial neighbour-side cyclic patch areas
|
||||||
|
vectorField nbrCyclicSf_;
|
||||||
|
|
||||||
|
//- Current fraction of the active baffle which is open
|
||||||
|
scalar openFraction_;
|
||||||
|
|
||||||
|
//- Time taken for the active baffle to open
|
||||||
|
scalar openingTime_;
|
||||||
|
|
||||||
|
//- Maximum fractional change to the active baffle openness
|
||||||
|
// per time-step
|
||||||
|
scalar maxOpenFractionDelta_;
|
||||||
|
|
||||||
|
label curTimeIndex_;
|
||||||
|
|
||||||
|
//- Minimum value for the active baffle to start opening
|
||||||
|
scalar minThresholdValue_;
|
||||||
|
|
||||||
|
//- Force based active baffle
|
||||||
|
bool fBased_;
|
||||||
|
|
||||||
|
//- Baffle is activated
|
||||||
|
bool baffleActivated_;
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
|
//- Runtime type information
|
||||||
|
TypeName("activePressureForceBaffleVelocity");
|
||||||
|
|
||||||
|
|
||||||
|
// Constructors
|
||||||
|
|
||||||
|
//- Construct from patch and internal field
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const fvPatch&,
|
||||||
|
const DimensionedField<vector, volMesh>&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Construct from patch, internal field and dictionary
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const fvPatch&,
|
||||||
|
const DimensionedField<vector, volMesh>&,
|
||||||
|
const dictionary&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Construct by mapping
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField&,
|
||||||
|
const fvPatch&,
|
||||||
|
const DimensionedField<vector, volMesh>&,
|
||||||
|
const fvPatchFieldMapper&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Construct as copy
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Construct and return a clone
|
||||||
|
virtual tmp<fvPatchVectorField> clone() const
|
||||||
|
{
|
||||||
|
return tmp<fvPatchVectorField>
|
||||||
|
(
|
||||||
|
new activePressureForceBaffleVelocityFvPatchVectorField(*this)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
//- Construct as copy setting internal field reference
|
||||||
|
activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
const activePressureForceBaffleVelocityFvPatchVectorField&,
|
||||||
|
const DimensionedField<vector, volMesh>&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Construct and return a clone setting internal field reference
|
||||||
|
virtual tmp<fvPatchVectorField> clone
|
||||||
|
(
|
||||||
|
const DimensionedField<vector, volMesh>& iF
|
||||||
|
) const
|
||||||
|
{
|
||||||
|
return tmp<fvPatchVectorField>
|
||||||
|
(
|
||||||
|
new activePressureForceBaffleVelocityFvPatchVectorField
|
||||||
|
(
|
||||||
|
*this,
|
||||||
|
iF
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Member functions
|
||||||
|
|
||||||
|
// Mapping functions
|
||||||
|
|
||||||
|
//- Map (and resize as needed) from self given a mapping object
|
||||||
|
virtual void autoMap
|
||||||
|
(
|
||||||
|
const fvPatchFieldMapper&
|
||||||
|
);
|
||||||
|
|
||||||
|
//- Reverse map the given fvPatchField onto this fvPatchField
|
||||||
|
virtual void rmap
|
||||||
|
(
|
||||||
|
const fvPatchVectorField&,
|
||||||
|
const labelList&
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
//- Update the coefficients associated with the patch field
|
||||||
|
virtual void updateCoeffs();
|
||||||
|
|
||||||
|
//- Write
|
||||||
|
virtual void write(Ostream&) const;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
} // End namespace Foam
|
||||||
|
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
8083
tutorials/combustion/PDRFoam/0/Aw
Normal file
8083
tutorials/combustion/PDRFoam/0/Aw
Normal file
File diff suppressed because it is too large
Load Diff
8083
tutorials/combustion/PDRFoam/0/B
Normal file
8083
tutorials/combustion/PDRFoam/0/B
Normal file
File diff suppressed because it is too large
Load Diff
8083
tutorials/combustion/PDRFoam/0/CR
Normal file
8083
tutorials/combustion/PDRFoam/0/CR
Normal file
File diff suppressed because it is too large
Load Diff
8083
tutorials/combustion/PDRFoam/0/CT
Normal file
8083
tutorials/combustion/PDRFoam/0/CT
Normal file
File diff suppressed because it is too large
Load Diff
8083
tutorials/combustion/PDRFoam/0/Lobs
Normal file
8083
tutorials/combustion/PDRFoam/0/Lobs
Normal file
File diff suppressed because it is too large
Load Diff
8083
tutorials/combustion/PDRFoam/0/Nv
Normal file
8083
tutorials/combustion/PDRFoam/0/Nv
Normal file
File diff suppressed because it is too large
Load Diff
53
tutorials/combustion/PDRFoam/0/Su
Normal file
53
tutorials/combustion/PDRFoam/0/Su
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object Su;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 1 -1 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 0.5;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 0.5;
|
||||||
|
value uniform 0.5;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/0/T
Normal file
54
tutorials/combustion/PDRFoam/0/T
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object T;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 0 0 1 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 300;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 300;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/0/Tu
Normal file
54
tutorials/combustion/PDRFoam/0/Tu
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object Tu;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 0 0 1 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 300;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 300;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
64
tutorials/combustion/PDRFoam/0/U
Normal file
64
tutorials/combustion/PDRFoam/0/U
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volVectorField;
|
||||||
|
location "0";
|
||||||
|
object U;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 1 -1 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform ( 0 0 0 );
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform ( 0 0 0 );
|
||||||
|
value uniform ( 0 0 0 );
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type fixedValue;
|
||||||
|
value uniform ( 0 0 0 );
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type fixedValue;
|
||||||
|
value uniform ( 0 0 0 );
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type activePressureForceBaffleVelocity;
|
||||||
|
value uniform ( 0 0 0 );
|
||||||
|
cyclicPatch baffleCyclic_half0;
|
||||||
|
orientation 1;
|
||||||
|
openingTime 0.01;
|
||||||
|
maxOpenFractionDelta 0.1;
|
||||||
|
openFraction 0;
|
||||||
|
p p;
|
||||||
|
minThresholdValue 8000;
|
||||||
|
forceBased 0;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/0/Xi
Normal file
54
tutorials/combustion/PDRFoam/0/Xi
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object Xi;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 0 0 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 1;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 1;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
58
tutorials/combustion/PDRFoam/0/alphat
Normal file
58
tutorials/combustion/PDRFoam/0/alphat
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object alphat;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [1 -1 -1 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 0;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type calculated;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type alphatWallFunction;
|
||||||
|
Prt 0.85;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type alphatWallFunction;
|
||||||
|
Prt 0.85;
|
||||||
|
value nonuniform 0();
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type alphatWallFunction;
|
||||||
|
Prt 0.85;
|
||||||
|
value nonuniform 0();
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/0/b
Normal file
54
tutorials/combustion/PDRFoam/0/b
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object b;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 0 0 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 1;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 1;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
8083
tutorials/combustion/PDRFoam/0/betav
Normal file
8083
tutorials/combustion/PDRFoam/0/betav
Normal file
File diff suppressed because it is too large
Load Diff
65
tutorials/combustion/PDRFoam/0/epsilon
Normal file
65
tutorials/combustion/PDRFoam/0/epsilon
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object epsilon;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 2 -3 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 0.1;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 0.1;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value uniform 1e-05;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
56
tutorials/combustion/PDRFoam/0/epsilon.old
Normal file
56
tutorials/combustion/PDRFoam/0/epsilon.old
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object epsilon;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 2 -3 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 0.1;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 0.1;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
value uniform 1e-05;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/0/ft
Normal file
54
tutorials/combustion/PDRFoam/0/ft
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object ft;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 0 0 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 0.0623;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 0.0623;
|
||||||
|
value uniform 0.0623;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0.06024096;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
56
tutorials/combustion/PDRFoam/0/k
Normal file
56
tutorials/combustion/PDRFoam/0/k
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object k;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 2 -2 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 1.5;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 1.5;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
56
tutorials/combustion/PDRFoam/0/k.old
Normal file
56
tutorials/combustion/PDRFoam/0/k.old
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object k;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 0 2 -2 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 1.5;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type inletOutlet;
|
||||||
|
inletValue uniform 1.5;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
64
tutorials/combustion/PDRFoam/0/mut
Normal file
64
tutorials/combustion/PDRFoam/0/mut
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object mut;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [1 -1 -1 0 0 0 0];
|
||||||
|
|
||||||
|
internalField uniform 0;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type calculated;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type mutkWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type mutkWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value nonuniform 0();
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type mutkWallFunction;
|
||||||
|
Cmu 0.09;
|
||||||
|
kappa 0.41;
|
||||||
|
E 9.8;
|
||||||
|
value nonuniform 0();
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
8085
tutorials/combustion/PDRFoam/0/nsv
Normal file
8085
tutorials/combustion/PDRFoam/0/nsv
Normal file
File diff suppressed because it is too large
Load Diff
55
tutorials/combustion/PDRFoam/0/p
Normal file
55
tutorials/combustion/PDRFoam/0/p
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class volScalarField;
|
||||||
|
location "0";
|
||||||
|
object p;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [ 1 -1 -2 0 0 0 0 ];
|
||||||
|
|
||||||
|
internalField uniform 100000;
|
||||||
|
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type waveTransmissive;
|
||||||
|
gamma 1.3;
|
||||||
|
fieldInf 100000;
|
||||||
|
lInf 5;
|
||||||
|
value uniform 100000;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
15
tutorials/combustion/PDRFoam/Allclean
Executable file
15
tutorials/combustion/PDRFoam/Allclean
Executable file
@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
# Source tutorial clean functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/CleanFunctions
|
||||||
|
cleanCase
|
||||||
|
|
||||||
|
rm -rf VTK
|
||||||
|
rm -rf constant/polyMesh/sets constant/polyMesh/faces
|
||||||
|
rm -rf constant/polyMesh/faces
|
||||||
|
rm -rf constant/polyMesh/points
|
||||||
|
rm -rf constant/polyMesh/owner
|
||||||
|
rm -rf constant/polyMesh/neighbour
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------- end-of-file
|
||||||
18
tutorials/combustion/PDRFoam/Allrun
Executable file
18
tutorials/combustion/PDRFoam/Allrun
Executable file
@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
cd ${0%/*} || exit 1 # run from this directory
|
||||||
|
|
||||||
|
|
||||||
|
# Source tutorial run functions
|
||||||
|
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||||
|
|
||||||
|
runApplication blockMesh
|
||||||
|
runApplication changeDictionary
|
||||||
|
runApplication setSet -batch makeBlockedFaceSet.setSet
|
||||||
|
|
||||||
|
runApplication PDRMesh
|
||||||
|
|
||||||
|
# Run
|
||||||
|
runApplication PDRFoam
|
||||||
|
|
||||||
|
# ----------------------------------------------------------------- end-of-file
|
||||||
|
|
||||||
12
tutorials/combustion/PDRFoam/README
Normal file
12
tutorials/combustion/PDRFoam/README
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
PDR test case
|
||||||
|
|
||||||
|
The folder 0.org contains the initial fields for the original
|
||||||
|
blockMesh.
|
||||||
|
|
||||||
|
Step to introduce the PDR fields:
|
||||||
|
|
||||||
|
1) Create zero-size patches for wall or/and coupled baffles in
|
||||||
|
the boundary file.
|
||||||
|
2) Specify the boundary contitions for these patches in the fields.
|
||||||
|
3) Create the new PDR mesh using the PDRMesh utility
|
||||||
|
|
||||||
101
tutorials/combustion/PDRFoam/constant/PDRProperties
Executable file
101
tutorials/combustion/PDRFoam/constant/PDRProperties
Executable file
@ -0,0 +1,101 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object PDRProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
PDRDragModel basic;
|
||||||
|
|
||||||
|
basicCoeffs
|
||||||
|
{
|
||||||
|
drag on;
|
||||||
|
Csu 0.5;
|
||||||
|
Csk 0.05;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
XiModel transport;
|
||||||
|
|
||||||
|
transportCoeffs
|
||||||
|
{
|
||||||
|
XiShapeCoef 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
XiEqModel instability;
|
||||||
|
|
||||||
|
instabilityCoeffs
|
||||||
|
{
|
||||||
|
XiEqIn 2.5;
|
||||||
|
|
||||||
|
XiEqModel basicSubGrid;
|
||||||
|
|
||||||
|
basicSubGridCoeffs
|
||||||
|
{
|
||||||
|
XiEqModel SCOPEBlend;
|
||||||
|
|
||||||
|
SCOPEBlendCoeffs
|
||||||
|
{
|
||||||
|
XiEqModelL
|
||||||
|
{
|
||||||
|
XiEqModel Gulder;
|
||||||
|
|
||||||
|
GulderCoeffs
|
||||||
|
{
|
||||||
|
XiEqCoef 0.62;
|
||||||
|
uPrimeCoef 1.0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
XiEqModelH
|
||||||
|
{
|
||||||
|
XiEqModel SCOPEXiEq;
|
||||||
|
|
||||||
|
SCOPEXiEqCoeffs
|
||||||
|
{
|
||||||
|
XiEqCoef 1.6;
|
||||||
|
XiEqExp 0.33333;
|
||||||
|
lCoef 0.336;
|
||||||
|
uPrimeCoef 1.0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
XiGModel instabilityG;
|
||||||
|
|
||||||
|
instabilityGCoeffs
|
||||||
|
{
|
||||||
|
lambdaIn lambdaIn [0 1 0 0 0 0 0] 0.6;
|
||||||
|
GIn GIn [0 0 -1 0 0 0 0] 1.917;
|
||||||
|
|
||||||
|
XiGModel basicSubGridG;
|
||||||
|
|
||||||
|
basicSubGridGCoeffs
|
||||||
|
{
|
||||||
|
k1 0.5;
|
||||||
|
|
||||||
|
XiGModel KTS;
|
||||||
|
|
||||||
|
KTSCoeffs
|
||||||
|
{
|
||||||
|
GEtaCoef 0.28;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
36
tutorials/combustion/PDRFoam/constant/RASProperties
Executable file
36
tutorials/combustion/PDRFoam/constant/RASProperties
Executable file
@ -0,0 +1,36 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object RASProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
RASModel PDRkEpsilon;
|
||||||
|
|
||||||
|
PDRkEpsilonCoeffs
|
||||||
|
{
|
||||||
|
Cmu 0.09;
|
||||||
|
C1 1.44;
|
||||||
|
C2 1.92;
|
||||||
|
C3 0;
|
||||||
|
C4 0.1;
|
||||||
|
alphah 1;
|
||||||
|
alphak 1;
|
||||||
|
alphaEps 0.76923;
|
||||||
|
}
|
||||||
|
|
||||||
|
turbulence on;
|
||||||
|
|
||||||
|
printCoeffs on;
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
46
tutorials/combustion/PDRFoam/constant/combustionProperties
Normal file
46
tutorials/combustion/PDRFoam/constant/combustionProperties
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object combustionProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
laminarFlameSpeedCorrelation SCOPE;
|
||||||
|
|
||||||
|
fuel Propane;
|
||||||
|
|
||||||
|
fuelFile "fuels/propane.dat";
|
||||||
|
|
||||||
|
ignite yes;
|
||||||
|
|
||||||
|
ignitionSites
|
||||||
|
(
|
||||||
|
|
||||||
|
{
|
||||||
|
location (1.5 1.5 0.5);
|
||||||
|
diameter 0.005;
|
||||||
|
start 1E-05;
|
||||||
|
duration 0.05;
|
||||||
|
strength 10.0;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
ignitionSphereFraction 1;
|
||||||
|
|
||||||
|
ignitionThickness ignitionThickness [0 1 0 0 0 0 0] 0;
|
||||||
|
|
||||||
|
ignitionCircleFraction 0;
|
||||||
|
|
||||||
|
ignitionKernelArea ignitionKernelArea [0 2 0 0 0 0 0] 0;
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
58
tutorials/combustion/PDRFoam/constant/dynamicMeshDict
Normal file
58
tutorials/combustion/PDRFoam/constant/dynamicMeshDict
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object dynamicMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dynamicFvMesh dynamicRefineFvMesh;
|
||||||
|
|
||||||
|
|
||||||
|
dynamicRefineFvMeshCoeffs
|
||||||
|
{
|
||||||
|
|
||||||
|
// Refine every refineInterval timesteps
|
||||||
|
refineInterval 1;
|
||||||
|
|
||||||
|
// Maximum refinement level (starts from 0)
|
||||||
|
maxRefinement 2;
|
||||||
|
|
||||||
|
// Maximum cell limit (approximate)
|
||||||
|
maxCells 10000;
|
||||||
|
|
||||||
|
// volScalarField to base refinement on
|
||||||
|
field normalisedGradP;
|
||||||
|
|
||||||
|
nBufferLayers 1;
|
||||||
|
|
||||||
|
dumpLevel true;
|
||||||
|
|
||||||
|
lowerRefineLevel 0.5;
|
||||||
|
upperRefineLevel 1.5;
|
||||||
|
|
||||||
|
unrefineLevel 0.5;
|
||||||
|
|
||||||
|
nBufferLayers 1;
|
||||||
|
// Newly introduced patch points optionally get projected onto a surface
|
||||||
|
//projectSurfaces ("fixedWalls4.stl");
|
||||||
|
//projectPatches (fixedWalls);
|
||||||
|
// Maximum project distance
|
||||||
|
//projectDistance 1;
|
||||||
|
|
||||||
|
// Fluxes to adapt. For newly created faces or split faces the flux
|
||||||
|
// gets estimated from an interpolated volVectorField ('velocity')
|
||||||
|
// First is name of the flux to adapt, second is velocity that will
|
||||||
|
// be interpolated and inner-producted with the face area vector.
|
||||||
|
correctFluxes ((phi U));
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
22
tutorials/combustion/PDRFoam/constant/g
Executable file
22
tutorials/combustion/PDRFoam/constant/g
Executable file
@ -0,0 +1,22 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class uniformDimensionedVectorField;
|
||||||
|
location "constant";
|
||||||
|
object g;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dimensions [0 1 -2 0 0 0 0];
|
||||||
|
value ( 0 0 -9.8 );
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
242
tutorials/combustion/PDRFoam/constant/polyMesh/blockMeshDict
Normal file
242
tutorials/combustion/PDRFoam/constant/polyMesh/blockMeshDict
Normal file
@ -0,0 +1,242 @@
|
|||||||
|
/*---------------------------------------------------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object blockMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
convertToMeters 1.0;
|
||||||
|
|
||||||
|
vertices
|
||||||
|
(
|
||||||
|
(0.0 0.0 0.0)
|
||||||
|
(1.0 0.0 0.0)
|
||||||
|
(2.0 0.0 0.0)
|
||||||
|
(3.0 0.0 0.0)
|
||||||
|
(0.0 1.0 0.0)
|
||||||
|
(1.0 1.0 0.0)
|
||||||
|
(2.0 1.0 0.0)
|
||||||
|
(3.0 1.0 0.0)
|
||||||
|
(0.0 2.0 0.0)
|
||||||
|
(1.0 2.0 0.0)
|
||||||
|
(2.0 2.0 0.0)
|
||||||
|
(3.0 2.0 0.0)
|
||||||
|
(0.0 3.0 0.0)
|
||||||
|
(1.0 3.0 0.0)
|
||||||
|
(2.0 3.0 0.0)
|
||||||
|
(3.0 3.0 0.0)
|
||||||
|
(0.0 0.0 1.0)
|
||||||
|
(1.0 0.0 1.0)
|
||||||
|
(2.0 0.0 1.0)
|
||||||
|
(3.0 0.0 1.0)
|
||||||
|
(0.0 1.0 1.0)
|
||||||
|
(1.0 1.0 1.0)
|
||||||
|
(2.0 1.0 1.0)
|
||||||
|
(3.0 1.0 1.0)
|
||||||
|
(0.0 2.0 1.0)
|
||||||
|
(1.0 2.0 1.0)
|
||||||
|
(2.0 2.0 1.0)
|
||||||
|
(3.0 2.0 1.0)
|
||||||
|
(0.0 3.0 1.0)
|
||||||
|
(1.0 3.0 1.0)
|
||||||
|
(2.0 3.0 1.0)
|
||||||
|
(3.0 3.0 1.0)
|
||||||
|
(0.0 0.0 2.0)
|
||||||
|
(1.0 0.0 2.0)
|
||||||
|
(2.0 0.0 2.0)
|
||||||
|
(3.0 0.0 2.0)
|
||||||
|
(0.0 1.0 2.0)
|
||||||
|
(1.0 1.0 2.0)
|
||||||
|
(2.0 1.0 2.0)
|
||||||
|
(3.0 1.0 2.0)
|
||||||
|
(0.0 2.0 2.0)
|
||||||
|
(1.0 2.0 2.0)
|
||||||
|
(2.0 2.0 2.0)
|
||||||
|
(3.0 2.0 2.0)
|
||||||
|
(0.0 3.0 2.0)
|
||||||
|
(1.0 3.0 2.0)
|
||||||
|
(2.0 3.0 2.0)
|
||||||
|
(3.0 3.0 2.0)
|
||||||
|
(-3.53553390593274 -3.53553390593274 0)
|
||||||
|
(-0.58113883008419 -4.74341649025257 0)
|
||||||
|
(3.58113883008419 -4.74341649025257 0)
|
||||||
|
(6.53553390593274 -3.53553390593274 0)
|
||||||
|
(-4.74341649025257 -0.58113883008419 0)
|
||||||
|
(-2.53553390593274 -2.53553390593274 0)
|
||||||
|
(5.53553390593274 -2.53553390593274 0)
|
||||||
|
(7.74341649025257 -0.58113883008419 0)
|
||||||
|
(-4.74341649025257 3.58113883008419 0)
|
||||||
|
(-2.53553390593274 5.53553390593274 0)
|
||||||
|
(5.53553390593274 5.53553390593274 0)
|
||||||
|
(7.74341649025257 3.58113883008419 0)
|
||||||
|
(-3.53553390593274 6.53553390593274 0)
|
||||||
|
(-0.58113883008419 7.74341649025257 0)
|
||||||
|
(3.58113883008419 7.74341649025257 0)
|
||||||
|
(6.53553390593274 6.53553390593274 0)
|
||||||
|
(-3.19801074533416 -3.19801074533416 3.1320071635561)
|
||||||
|
(-0.336306209562122 -4.00891862868637 3.67261241912424)
|
||||||
|
(3.33630620956212 -4.00891862868637 3.67261241912424)
|
||||||
|
(6.19801074533416 -3.19801074533416 3.1320071635561)
|
||||||
|
(-4.00891862868637 -0.336306209562122 3.67261241912424)
|
||||||
|
(7.00891862868637 -0.336306209562122 3.67261241912424)
|
||||||
|
(-4.00891862868637 3.33630620956212 3.67261241912424)
|
||||||
|
(7.00891862868637 3.33630620956212 3.67261241912424)
|
||||||
|
(-3.19801074533416 6.19801074533416 3.1320071635561)
|
||||||
|
(-0.336306209562122 7.00891862868637 3.67261241912424)
|
||||||
|
(3.33630620956212 7.00891862868637 3.67261241912424)
|
||||||
|
(6.19801074533416 6.19801074533416 3.1320071635561)
|
||||||
|
(-2.57247877713763 -2.57247877713763 5.42997170285018)
|
||||||
|
(0.0194193243090797 -2.94174202707276 5.92232270276368)
|
||||||
|
(2.98058067569092 -2.94174202707276 5.92232270276368)
|
||||||
|
(5.57247877713763 -2.57247877713763 5.42997170285018)
|
||||||
|
(-2.94174202707276 0.0194193243090797 5.92232270276368)
|
||||||
|
(-0.178511301977579 -0.178511301977579 6.71404520791032)
|
||||||
|
(3.17851130197758 -0.178511301977579 6.71404520791032)
|
||||||
|
(5.94174202707276 0.0194193243090797 5.92232270276368)
|
||||||
|
(-2.94174202707276 2.98058067569092 5.92232270276368)
|
||||||
|
(-0.178511301977579 3.17851130197758 6.71404520791032)
|
||||||
|
(3.17851130197758 3.17851130197758 6.71404520791032)
|
||||||
|
(5.94174202707276 2.98058067569092 5.92232270276368)
|
||||||
|
(-2.57247877713763 5.57247877713763 5.42997170285018)
|
||||||
|
(0.0194193243090797 5.94174202707276 5.92232270276368)
|
||||||
|
(2.98058067569092 5.94174202707276 5.92232270276368)
|
||||||
|
(5.57247877713763 5.57247877713763 5.42997170285018)
|
||||||
|
);
|
||||||
|
|
||||||
|
blocks
|
||||||
|
(
|
||||||
|
hex (0 1 5 4 16 17 21 20 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (1 2 6 5 17 18 22 21 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (2 3 7 6 18 19 23 22 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (4 5 9 8 20 21 25 24 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (5 6 10 9 21 22 26 25 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (6 7 11 10 22 23 27 26 )(5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (8 9 13 12 24 25 29 28 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (9 10 14 13 25 26 30 29 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (10 11 15 14 26 27 31 30 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (16 17 21 20 32 33 37 36 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (17 18 22 21 33 34 38 37 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (18 19 23 22 34 35 39 38 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (20 21 25 24 36 37 41 40 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (21 22 26 25 37 38 42 41 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (22 23 27 26 38 39 43 42 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (24 25 29 28 40 41 45 44 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (25 26 30 29 41 42 46 45 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (26 27 31 30 42 43 47 46 ) (5 5 5) simpleGrading (1 1 1)
|
||||||
|
hex (47 46 42 43 91 90 86 87) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (46 45 41 42 90 89 85 86) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (45 44 40 41 89 88 84 85) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (43 42 38 39 87 86 82 83) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (42 41 37 38 86 85 81 82) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (41 40 36 37 85 84 80 81) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (39 38 34 35 83 82 78 79) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (38 37 33 34 82 81 77 78) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (37 36 32 33 81 80 76 77) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (0 16 20 4 48 64 68 52) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (16 32 36 20 64 76 80 68) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (4 20 24 8 52 68 70 56) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (20 36 40 24 68 80 84 70) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (8 24 28 12 56 70 72 60) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (24 40 44 28 70 84 88 72) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (47 43 27 31 91 87 71 75) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (43 39 23 27 87 83 69 71) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (39 35 19 23 83 79 67 69) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (31 27 11 15 75 71 59 63) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (27 23 7 11 71 69 55 59) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (23 19 3 7 69 67 51 55) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (0 1 17 16 48 49 65 64) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (1 2 18 17 49 50 66 65) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (2 3 19 18 50 51 67 66) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (16 17 33 32 64 65 77 76) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (17 18 34 33 65 66 78 77) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (18 19 35 34 66 67 79 78) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (47 31 30 46 91 75 74 90) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (31 15 14 30 75 63 62 74) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (46 30 29 45 90 74 73 89) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (30 14 13 29 74 62 61 73) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (45 29 28 44 89 73 72 88) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
hex (29 13 12 28 73 61 60 72) (5 5 7) simpleGrading (1 1 2.985984)
|
||||||
|
);
|
||||||
|
|
||||||
|
patches
|
||||||
|
(
|
||||||
|
patch outer
|
||||||
|
(
|
||||||
|
(91 90 86 87)
|
||||||
|
(90 89 85 86)
|
||||||
|
(89 88 84 85)
|
||||||
|
(87 86 82 83)
|
||||||
|
(86 85 81 82)
|
||||||
|
(85 84 80 81)
|
||||||
|
(83 82 78 79)
|
||||||
|
(82 81 77 78)
|
||||||
|
(81 80 76 77)
|
||||||
|
(48 64 68 52)
|
||||||
|
(64 76 80 68)
|
||||||
|
(52 68 70 56)
|
||||||
|
(68 80 84 70)
|
||||||
|
(56 70 72 60)
|
||||||
|
(70 84 88 72)
|
||||||
|
(91 87 71 75)
|
||||||
|
(87 83 69 71)
|
||||||
|
(83 79 67 69)
|
||||||
|
(75 71 59 63)
|
||||||
|
(71 69 55 59)
|
||||||
|
(69 67 51 55)
|
||||||
|
(48 49 65 64)
|
||||||
|
(49 50 66 65)
|
||||||
|
(50 51 67 66)
|
||||||
|
(64 65 77 76)
|
||||||
|
(65 66 78 77)
|
||||||
|
(66 67 79 78)
|
||||||
|
(91 75 74 90)
|
||||||
|
(75 63 62 74)
|
||||||
|
(90 74 73 89)
|
||||||
|
(74 62 61 73)
|
||||||
|
(89 73 72 88)
|
||||||
|
(73 61 60 72)
|
||||||
|
)
|
||||||
|
wall ground
|
||||||
|
(
|
||||||
|
(0 4 5 1)
|
||||||
|
(1 5 6 2)
|
||||||
|
(2 6 7 3)
|
||||||
|
(4 8 9 5)
|
||||||
|
(5 9 10 6)
|
||||||
|
(6 10 11 7)
|
||||||
|
(8 12 13 9)
|
||||||
|
(9 13 14 10)
|
||||||
|
(10 14 15 11)
|
||||||
|
(4 0 48 52)
|
||||||
|
(8 4 52 56)
|
||||||
|
(12 8 56 60)
|
||||||
|
(11 15 63 59)
|
||||||
|
(7 11 59 55)
|
||||||
|
(3 7 55 51)
|
||||||
|
(0 1 49 48)
|
||||||
|
(1 2 50 49)
|
||||||
|
(2 3 51 50)
|
||||||
|
(15 14 62 63)
|
||||||
|
(14 13 61 62)
|
||||||
|
(13 12 60 61)
|
||||||
|
)
|
||||||
|
wall blockedFaces
|
||||||
|
()
|
||||||
|
wall baffleWall
|
||||||
|
()
|
||||||
|
cycic baffleCyclic_half0
|
||||||
|
()
|
||||||
|
cycic baffleCyclic_half1
|
||||||
|
()
|
||||||
|
|
||||||
|
|
||||||
|
);
|
||||||
60
tutorials/combustion/PDRFoam/constant/polyMesh/boundary
Normal file
60
tutorials/combustion/PDRFoam/constant/polyMesh/boundary
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class polyBoundaryMesh;
|
||||||
|
location "constant/polyMesh";
|
||||||
|
object boundary;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
6
|
||||||
|
(
|
||||||
|
outer
|
||||||
|
{
|
||||||
|
type patch;
|
||||||
|
nFaces 825;
|
||||||
|
startFace 23340;
|
||||||
|
}
|
||||||
|
ground
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
nFaces 645;
|
||||||
|
startFace 24165;
|
||||||
|
}
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
nFaces 0;
|
||||||
|
startFace 24810;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type wall;
|
||||||
|
nFaces 0;
|
||||||
|
startFace 24810;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
nFaces 0;
|
||||||
|
startFace 24810;
|
||||||
|
neighbourPatch baffleCyclic_half1;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
nFaces 0;
|
||||||
|
startFace 24810;
|
||||||
|
neighbourPatch baffleCyclic_half0;
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
@ -0,0 +1,64 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object thermophysicalProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
thermoType hhuMixtureThermo<inhomogeneousMixture<sutherlandTransport<specieThermo<janafThermo<perfectGas>>>>>;
|
||||||
|
|
||||||
|
stoichiometricAirFuelMassRatio stoichiometricAirFuelMassRatio [0 0 0 0 0 0 0] 15.5776;
|
||||||
|
|
||||||
|
fuel
|
||||||
|
{
|
||||||
|
nMoles 1;
|
||||||
|
molWeight 44.0962;
|
||||||
|
Tlow 200;
|
||||||
|
Thigh 5000;
|
||||||
|
Tcommon 1000;
|
||||||
|
highCpCoeffs ( 7.53414 0.0188722 -6.27185e-06 9.14756e-10 -4.78381e-14 -16467.5 -17.8923 );
|
||||||
|
lowCpCoeffs ( 0.933554 0.0264246 6.10597e-06 -2.19775e-08 9.51493e-12 -13958.5 19.2017 );
|
||||||
|
As 1.67212e-06;
|
||||||
|
Ts 170.672;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
oxidant
|
||||||
|
{
|
||||||
|
nMoles 1;
|
||||||
|
molWeight 28.8504;
|
||||||
|
Tlow 200;
|
||||||
|
Thigh 6000;
|
||||||
|
Tcommon 1000;
|
||||||
|
highCpCoeffs ( 3.10131 0.00124137 -4.18816e-07 6.64158e-11 -3.91274e-15 -985.266 5.35597 );
|
||||||
|
lowCpCoeffs ( 3.58378 -0.000727005 1.67057e-06 -1.09203e-10 -4.31765e-13 -1050.53 3.11239 );
|
||||||
|
As 1.67212e-06;
|
||||||
|
Ts 170.672;
|
||||||
|
}
|
||||||
|
|
||||||
|
burntProducts
|
||||||
|
{
|
||||||
|
nMoles 1;
|
||||||
|
molWeight 28.3233;
|
||||||
|
Tlow 200;
|
||||||
|
Thigh 6000;
|
||||||
|
Tcommon 1000;
|
||||||
|
highCpCoeffs ( 3.10558 0.00179747 -5.94696e-07 9.05605e-11 -5.08443e-15 -11003.6 5.12104 );
|
||||||
|
lowCpCoeffs ( 3.49796 0.000638555 -1.83881e-07 1.20989e-09 -7.68691e-13 -11080.5 3.18188 );
|
||||||
|
As 1.67212e-06;
|
||||||
|
Ts 170.672;
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
|
|
||||||
|
|
||||||
21
tutorials/combustion/PDRFoam/constant/turbulenceProperties
Executable file
21
tutorials/combustion/PDRFoam/constant/turbulenceProperties
Executable file
@ -0,0 +1,21 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "constant";
|
||||||
|
object turbulenceProperties;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
simulationType RASModel;
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
73
tutorials/combustion/PDRFoam/fuels/propane.dat
Normal file
73
tutorials/combustion/PDRFoam/fuels/propane.dat
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
SCOPECoeffs
|
||||||
|
{
|
||||||
|
lowerFlamabilityLimit 0.522;
|
||||||
|
upperFlamabilityLimit 2.362;
|
||||||
|
|
||||||
|
lowerSuPolynomial
|
||||||
|
{
|
||||||
|
lowerLimit 0.6;
|
||||||
|
upperLimit 1.2;
|
||||||
|
coefficients
|
||||||
|
(
|
||||||
|
0.45
|
||||||
|
0.713364389
|
||||||
|
-2.359004778
|
||||||
|
-2.629755677
|
||||||
|
-29.11933997
|
||||||
|
-55.34224225
|
||||||
|
0.0
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
upperSuPolynomial
|
||||||
|
{
|
||||||
|
lowerLimit 1.1;
|
||||||
|
upperLimit 1.64;
|
||||||
|
coefficients
|
||||||
|
(
|
||||||
|
0.419664668
|
||||||
|
2.280811555
|
||||||
|
-11.53872754
|
||||||
|
2.98656153
|
||||||
|
21.04870808
|
||||||
|
-16.09645303
|
||||||
|
0.0
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
Texp 2;
|
||||||
|
pexp -0.5;
|
||||||
|
|
||||||
|
lowerMaPolynomial
|
||||||
|
{
|
||||||
|
lowerLimit 0.5;
|
||||||
|
upperLimit 0.75;
|
||||||
|
coefficients
|
||||||
|
(
|
||||||
|
3.739047
|
||||||
|
-5.12414
|
||||||
|
-38.1444
|
||||||
|
-134.813
|
||||||
|
-224.633
|
||||||
|
-144.27
|
||||||
|
0
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
upperMaPolynomial
|
||||||
|
{
|
||||||
|
lowerLimit 0.75;
|
||||||
|
upperLimit 1.0;
|
||||||
|
coefficients
|
||||||
|
(
|
||||||
|
3.739047
|
||||||
|
-5.12414
|
||||||
|
-38.1444
|
||||||
|
-134.813
|
||||||
|
-224.633
|
||||||
|
-144.27
|
||||||
|
0
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
5
tutorials/combustion/PDRFoam/makeBlockedFaceSet.setSet
Normal file
5
tutorials/combustion/PDRFoam/makeBlockedFaceSet.setSet
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
faceSet blockedFacesSet new boxToFace (1 1 0.99) (2 2 1)
|
||||||
|
cellSet blockedCellsSet new boxToCell (2.4 2.4 0) (3 3 1)
|
||||||
|
cellSet blockedCellsSet add boxToCell (0 0 0) (0.6 0.6 1)
|
||||||
|
faceSet blockedFacesSet add cellToFace blockedCellsSet all
|
||||||
|
faceSet coupledFacesSet new boxToFace (1.0 1.99 0) (2.0 2.09 0.6)
|
||||||
38
tutorials/combustion/PDRFoam/system/PDRMeshDict
Normal file
38
tutorials/combustion/PDRFoam/system/PDRMeshDict
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object PDRMeshDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
//- Per faceSet the patch the faces should go into blocked baffles
|
||||||
|
blockedFaces ((blockedFacesSet blockedFaces));
|
||||||
|
|
||||||
|
//- Per faceSet the patch the faces should go into coupled baffles
|
||||||
|
coupledFaces
|
||||||
|
{
|
||||||
|
|
||||||
|
coupledFacesSet
|
||||||
|
{
|
||||||
|
wallPatchName baffleWall;
|
||||||
|
cyclicMasterPatchName baffleCyclic_half0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//- Name of cellSet that holds the cells to fully remove
|
||||||
|
blockedCells blockedCellsSet;
|
||||||
|
|
||||||
|
//- All exposed faces that are not specified in blockedFaces go into
|
||||||
|
// this patch
|
||||||
|
defaultPatch outer;
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
455
tutorials/combustion/PDRFoam/system/changeDictionaryDict
Normal file
455
tutorials/combustion/PDRFoam/system/changeDictionaryDict
Normal file
@ -0,0 +1,455 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
object changeDictionaryDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
dictionaryReplacement
|
||||||
|
{
|
||||||
|
p
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
U
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type fixedValue;
|
||||||
|
value uniform (0 0 0);
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type activePressureForceBaffleVelocity;
|
||||||
|
cyclicPatch baffleCyclic_half0;
|
||||||
|
orientation 1;
|
||||||
|
openingTime 0.01;
|
||||||
|
maxOpenFractionDelta 0.1;
|
||||||
|
openFraction 0;
|
||||||
|
p p;
|
||||||
|
minThresholdValue 8000;
|
||||||
|
forceBased 0;
|
||||||
|
value uniform ( 0 0 0 );
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
epsilon
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
value uniform 0.1;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::epsilonWallFunction;
|
||||||
|
value uniform 1e-5;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
k
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type compressible::kqRWallFunction;
|
||||||
|
value uniform 1.5;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Su
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Xi
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
T
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Tu
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 300;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
b
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 1;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ft
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0.06024096;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Aw
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0.0;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
B
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform (0 0 0 0 0 0);
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
betav
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CR
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform (0 0 0 0 0 0);
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
CT
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform (0 0 0 0 0 0);
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Nv
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
nsv
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform (0 0 0 0 0 0);
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Lobs
|
||||||
|
{
|
||||||
|
boundaryField
|
||||||
|
{
|
||||||
|
blockedFaces
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
}
|
||||||
|
baffleWall
|
||||||
|
{
|
||||||
|
type zeroGradient;
|
||||||
|
value uniform 0;
|
||||||
|
}
|
||||||
|
baffleCyclic_half0
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
baffleCyclic_half1
|
||||||
|
{
|
||||||
|
type cyclic;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
55
tutorials/combustion/PDRFoam/system/controlDict
Normal file
55
tutorials/combustion/PDRFoam/system/controlDict
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object controlDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
application PDRFoam;
|
||||||
|
|
||||||
|
startFrom latestTime;
|
||||||
|
|
||||||
|
startTime 0;
|
||||||
|
|
||||||
|
stopAt endTime;
|
||||||
|
|
||||||
|
endTime 0.2;
|
||||||
|
|
||||||
|
deltaT 5e-06;
|
||||||
|
|
||||||
|
writeControl adjustableRunTime;
|
||||||
|
|
||||||
|
writeInterval 0.01;
|
||||||
|
|
||||||
|
purgeWrite 0;
|
||||||
|
|
||||||
|
writeFormat ascii;
|
||||||
|
|
||||||
|
writePrecision 8;
|
||||||
|
|
||||||
|
writeCompression off;
|
||||||
|
|
||||||
|
timeFormat general;
|
||||||
|
|
||||||
|
timePrecision 6;
|
||||||
|
|
||||||
|
runTimeModifiable yes;
|
||||||
|
|
||||||
|
adjustTimeStep yes;
|
||||||
|
|
||||||
|
maxCo 0.3;
|
||||||
|
|
||||||
|
maxDeltaT 1;
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
|
|
||||||
40
tutorials/combustion/PDRFoam/system/decomposeParDict
Normal file
40
tutorials/combustion/PDRFoam/system/decomposeParDict
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object decomposeParDict;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
numberOfSubdomains 4;
|
||||||
|
|
||||||
|
method simple;
|
||||||
|
|
||||||
|
simpleCoeffs
|
||||||
|
{
|
||||||
|
n (2 2 1);
|
||||||
|
delta 0.001;
|
||||||
|
}
|
||||||
|
|
||||||
|
hierarchicalCoeffs
|
||||||
|
{
|
||||||
|
n (2 2 1);
|
||||||
|
delta 0.001;
|
||||||
|
order xyz;
|
||||||
|
}
|
||||||
|
|
||||||
|
manualCoeffs
|
||||||
|
{
|
||||||
|
dataFile "decompositionData";
|
||||||
|
}
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
87
tutorials/combustion/PDRFoam/system/fvSchemes
Executable file
87
tutorials/combustion/PDRFoam/system/fvSchemes
Executable file
@ -0,0 +1,87 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSchemes;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
ddtSchemes
|
||||||
|
{
|
||||||
|
default Euler;
|
||||||
|
}
|
||||||
|
|
||||||
|
gradSchemes
|
||||||
|
{
|
||||||
|
default Gauss linear;
|
||||||
|
grad(p) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
divSchemes
|
||||||
|
{
|
||||||
|
default none;
|
||||||
|
|
||||||
|
div(phi,U) Gauss limitedLinearV 1;
|
||||||
|
div(phiU,p) Gauss limitedLinear 1;
|
||||||
|
div(phid,p) Gauss limitedLinear 1;
|
||||||
|
div(phi,k) Gauss limitedLinear 1;
|
||||||
|
div(phi,epsilon) Gauss limitedLinear 1;
|
||||||
|
|
||||||
|
div(phiXi,Xi) Gauss limitedLinear 1;
|
||||||
|
div(phiSt,b) Gauss limitedLinear01 1;
|
||||||
|
|
||||||
|
div(phi,ft_b_h_hu) Gauss multivariateSelection
|
||||||
|
{
|
||||||
|
ft limitedLinear01 1;
|
||||||
|
b limitedLinear01 1;
|
||||||
|
Xi limitedLinear 1;
|
||||||
|
h limitedLinear 1;
|
||||||
|
hu limitedLinear 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
div((Su*grad(b))) Gauss linear;
|
||||||
|
div((U+((Su*Xi)*grad(b)))) Gauss linear;
|
||||||
|
div((muEff*dev2(T(grad(U))))) Gauss linear;
|
||||||
|
div(U) Gauss linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
laplacianSchemes
|
||||||
|
{
|
||||||
|
default none;
|
||||||
|
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||||
|
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||||
|
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||||
|
laplacian((rho*inv((((1)*A(U))+((((0.5*rho)*CR)*mag(U))+((((Csu*(1))*betav)*muEff)*sqr(Aw)))))),p) Gauss linear limited 0.333;
|
||||||
|
laplacian(Db,b) Gauss linear limited 0.333;
|
||||||
|
laplacian(Db,ft) Gauss linear limited 0.333;
|
||||||
|
laplacian(Db,h) Gauss linear limited 0.333;
|
||||||
|
laplacian(Db,hu) Gauss linear limited 0.333;
|
||||||
|
}
|
||||||
|
|
||||||
|
interpolationSchemes
|
||||||
|
{
|
||||||
|
default linear;
|
||||||
|
}
|
||||||
|
|
||||||
|
snGradSchemes
|
||||||
|
{
|
||||||
|
default limited 0.333;
|
||||||
|
}
|
||||||
|
|
||||||
|
fluxRequired
|
||||||
|
{
|
||||||
|
default no;
|
||||||
|
p;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
54
tutorials/combustion/PDRFoam/system/fvSolution
Executable file
54
tutorials/combustion/PDRFoam/system/fvSolution
Executable file
@ -0,0 +1,54 @@
|
|||||||
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
|
| ========= | |
|
||||||
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
|
| \\ / O peration | Version: dev |
|
||||||
|
| \\ / A nd | Web: www.OpenFOAM.com |
|
||||||
|
| \\/ M anipulation | |
|
||||||
|
\*---------------------------------------------------------------------------*/
|
||||||
|
FoamFile
|
||||||
|
{
|
||||||
|
version 2.0;
|
||||||
|
format ascii;
|
||||||
|
class dictionary;
|
||||||
|
location "system";
|
||||||
|
object fvSolution;
|
||||||
|
}
|
||||||
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|
||||||
|
solvers
|
||||||
|
{
|
||||||
|
rho
|
||||||
|
{
|
||||||
|
solver PCG;
|
||||||
|
preconditioner DIC;
|
||||||
|
tolerance 1e-05;
|
||||||
|
relTol 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
p
|
||||||
|
{
|
||||||
|
solver PCG;
|
||||||
|
preconditioner DIC;
|
||||||
|
tolerance 1e-6;
|
||||||
|
relTol 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
"(U|ft|fu|b|Xi|Su|h|hu|R|k|epsilon)"
|
||||||
|
{
|
||||||
|
solver PBiCG;
|
||||||
|
preconditioner DILU;
|
||||||
|
tolerance 1e-05;
|
||||||
|
relTol 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
PISO
|
||||||
|
{
|
||||||
|
nCorrectors 2;
|
||||||
|
nNonOrthogonalCorrectors 0;
|
||||||
|
momentumPredictor true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ************************************************************************* //
|
||||||
Reference in New Issue
Block a user