mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Merge branch 'master' of /home/dm4/OpenFOAM/OpenFOAM-dev
This commit is contained in:
@ -45,7 +45,7 @@
|
||||
);
|
||||
|
||||
|
||||
Info<< "Reading diffusivity D\n" << endl;
|
||||
Info<< "Reading diffusivity DT\n" << endl;
|
||||
|
||||
dimensionedScalar DT
|
||||
(
|
||||
|
||||
@ -46,5 +46,6 @@ EXE_LIBS = \
|
||||
-lradiationModels \
|
||||
-lsurfaceFilmModels \
|
||||
-lpyrolysisModels \
|
||||
-lregionCoupling \
|
||||
-llagrangianIntermediate \
|
||||
-lODE
|
||||
|
||||
@ -37,48 +37,6 @@
|
||||
|
||||
#include "readGravitationalAcceleration.H"
|
||||
|
||||
Info<< "\nReading freeSurfaceProperties\n" << endl;
|
||||
|
||||
IOdictionary freeSurfaceProperties
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"freeSurfaceProperties",
|
||||
runTime.constant(),
|
||||
mesh,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::NO_WRITE
|
||||
)
|
||||
);
|
||||
|
||||
word freeSurfacePatch(freeSurfaceProperties.lookup("freeSurfacePatch"));
|
||||
label freeSurfacePatchI = mesh.boundaryMesh().findPatchID(freeSurfacePatch);
|
||||
if (freeSurfacePatchI < 0)
|
||||
{
|
||||
FatalErrorIn(args.executable())
|
||||
<< "Patch " << freeSurfacePatch << " not found. "
|
||||
<< "Available patches are:" << mesh.boundaryMesh().names()
|
||||
<< exit(FatalError);
|
||||
}
|
||||
|
||||
Info<< "Creating field refLevel\n" << endl;
|
||||
volVectorField refLevel
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"refLevel",
|
||||
runTime.timeName(),
|
||||
mesh,
|
||||
IOobject::NO_READ,
|
||||
IOobject::NO_WRITE
|
||||
),
|
||||
mesh,
|
||||
dimensionedVector("zero", dimLength, vector::zero)
|
||||
);
|
||||
|
||||
refLevel.boundaryField()[freeSurfacePatchI]
|
||||
== mesh.C().boundaryField()[freeSurfacePatchI];
|
||||
|
||||
Info<< "Creating field zeta\n" << endl;
|
||||
volVectorField zeta
|
||||
(
|
||||
@ -110,7 +68,7 @@
|
||||
|
||||
// Force p_gh to be consistent with p
|
||||
// Height is made relative to field 'refLevel'
|
||||
p_gh = p - (g & (mesh.C() + zeta - refLevel));
|
||||
p_gh = p - (g & mesh.C());
|
||||
|
||||
|
||||
label p_ghRefCell = 0;
|
||||
|
||||
@ -42,7 +42,7 @@ while (pimple.correctNonOrthogonal())
|
||||
// Explicitly relax pressure for momentum corrector
|
||||
p_gh.relax();
|
||||
|
||||
p = p_gh + (g & (mesh.C() + zeta - refLevel));
|
||||
p = p_gh + (g & mesh.C());
|
||||
|
||||
U = HbyA - rAU*fvc::grad(p_gh);
|
||||
U.correctBoundaryConditions();
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -55,10 +55,10 @@ Description
|
||||
- find most unique face shape (e.g. triangle for prism)
|
||||
- walk (following either vertices in face or jumping from face to other
|
||||
face) to other faces and checking face sizes.
|
||||
- if nessecary try other rotations of this face
|
||||
(only nessecary for wedge, tet-wedge)
|
||||
- if nessecary try other faces which most unique face shape
|
||||
(never nessecary for hex degenerates)
|
||||
- if necessary try other rotations of this face
|
||||
(only necessary for wedge, tet-wedge)
|
||||
- if necessary try other faces which most unique face shape
|
||||
(never necessary for hex degenerates)
|
||||
|
||||
The whole calculation is done such that no lists are allocated during
|
||||
cell checking. E.g. localFaces_ are always sized to hold max. number
|
||||
@ -94,7 +94,7 @@ class cellShape;
|
||||
class cellModel;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class cellMatcher Declaration
|
||||
Class cellMatcher Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class cellMatcher
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -47,7 +47,7 @@ Description
|
||||
cell out of face, edge or point.
|
||||
- can be appended: added 'out of nothing'.
|
||||
|
||||
All this information is nessecary to correctly map fields.
|
||||
All this information is necessary to correctly map fields.
|
||||
|
||||
\par points
|
||||
|
||||
@ -153,7 +153,7 @@ namespace Foam
|
||||
class polyMesh;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class mapPolyMesh Declaration
|
||||
Class mapPolyMesh Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class mapPolyMesh
|
||||
|
||||
@ -673,7 +673,7 @@ void Foam::syncTools::syncEdgeMap
|
||||
|
||||
|
||||
// Now sharedEdgeValues will contain per potential sharedEdge the value.
|
||||
// (potential since an edge having two shared points is not nessecary a
|
||||
// (potential since an edge having two shared points is not necessary a
|
||||
// shared edge).
|
||||
// Reduce this on the master.
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -151,7 +151,7 @@ static void handler(void)
|
||||
|
||||
// Save the pointer (that gamma knows about) so we can safely
|
||||
// gamma_switch_to_buffer with a valid pointer.
|
||||
// Not sure if nessecary but do anyway.
|
||||
// Not sure if necessary but do anyway.
|
||||
savedBuf.transfer(buf);
|
||||
|
||||
// Resize all the buffers
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -424,7 +424,7 @@ void Foam::polyDualMesh::collectPatchInternalFace
|
||||
{
|
||||
featEdgeIndices2[i] = dualFace2.size() -1 - featEdgeIndices2[i];
|
||||
}
|
||||
// Reverse indices (might not be nessecary but do anyway)
|
||||
// Reverse indices (might not be necessary but do anyway)
|
||||
reverse(featEdgeIndices2);
|
||||
}
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ class mapAddedPolyMesh;
|
||||
class mapDistributePolyMesh;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class fvMeshDistribute Declaration
|
||||
Class fvMeshDistribute Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class fvMeshDistribute
|
||||
@ -132,7 +132,7 @@ class fvMeshDistribute
|
||||
// patchI.
|
||||
autoPtr<mapPolyMesh> deleteProcPatches(const label patchI);
|
||||
|
||||
//- Repatch the mesh. This is only nessecary for the proc
|
||||
//- Repatch the mesh. This is only necessary for the proc
|
||||
// boundary faces. newPatchID is over all boundary faces: -1 or
|
||||
// new patchID. constructFaceMap is being adapted for the
|
||||
// possible new face position (since proc faces get automatically
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -2720,7 +2720,7 @@ Foam::cellCuts::cellCuts
|
||||
|
||||
calcLoopsAndAddressing(cutCells);
|
||||
|
||||
// Calculate planes and flip cellLoops if nessecary
|
||||
// Calculate planes and flip cellLoops if necessary
|
||||
orientPlanesAndLoops();
|
||||
|
||||
if (debug)
|
||||
@ -2765,7 +2765,7 @@ Foam::cellCuts::cellCuts
|
||||
|
||||
calcLoopsAndAddressing(identity(mesh.nCells()));
|
||||
|
||||
// Calculate planes and flip cellLoops if nessecary
|
||||
// Calculate planes and flip cellLoops if necessary
|
||||
orientPlanesAndLoops();
|
||||
|
||||
if (debug)
|
||||
@ -2811,7 +2811,7 @@ Foam::cellCuts::cellCuts
|
||||
// Makes sure cuts are consistent
|
||||
setFromCellLoops(cellLabels, cellLoops, cellEdgeWeights);
|
||||
|
||||
// Calculate planes and flip cellLoops if nessecary
|
||||
// Calculate planes and flip cellLoops if necessary
|
||||
orientPlanesAndLoops();
|
||||
|
||||
if (debug)
|
||||
@ -2855,7 +2855,7 @@ Foam::cellCuts::cellCuts
|
||||
// Makes sure cuts are consistent
|
||||
setFromCellCutter(cellCutter, refCells);
|
||||
|
||||
// Calculate planes and flip cellLoops if nessecary
|
||||
// Calculate planes and flip cellLoops if necessary
|
||||
orientPlanesAndLoops();
|
||||
|
||||
if (debug)
|
||||
@ -2901,7 +2901,7 @@ Foam::cellCuts::cellCuts
|
||||
// Makes sure cuts are consistent
|
||||
setFromCellCutter(cellCutter, cellLabels, cutPlanes);
|
||||
|
||||
// Calculate planes and flip cellLoops if nessecary
|
||||
// Calculate planes and flip cellLoops if necessary
|
||||
orientPlanesAndLoops();
|
||||
|
||||
if (debug)
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,7 +29,7 @@ Description
|
||||
|
||||
Does
|
||||
- move boundary points
|
||||
- split boundary edges (multiple per edge if nessecary)
|
||||
- split boundary edges (multiple per edge if necessary)
|
||||
- face-centre decomposes boundary faces
|
||||
- diagonal split of boundary faces
|
||||
|
||||
@ -60,7 +60,7 @@ class polyMesh;
|
||||
class face;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class boundaryCutter Declaration
|
||||
Class boundaryCutter Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class boundaryCutter
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -28,7 +28,7 @@ Description
|
||||
Cuts (splits) cells.
|
||||
|
||||
Description of cut is given as a loop of 'cuts' per cell (see cellCuts).
|
||||
setRefinement() takes this cut description and inserts the nessecary
|
||||
setRefinement() takes this cut description and inserts the necessary
|
||||
topoActions (add points/faces/cells) into the polyTopoChange.
|
||||
|
||||
Stores added cells/faces/points.
|
||||
@ -129,7 +129,7 @@ class polyMesh;
|
||||
class face;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class meshCutter Declaration
|
||||
Class meshCutter Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class meshCutter
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -88,7 +88,7 @@ class refineCell;
|
||||
class splitCell;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class undoableMeshCutter Declaration
|
||||
Class undoableMeshCutter Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class undoableMeshCutter
|
||||
@ -192,7 +192,7 @@ public:
|
||||
//- Remove some refinement. Needs to be supplied subset of
|
||||
// getSplitFaces() output. Returns list of faces removed
|
||||
// (can be more or equal but never less than splitFaces - since
|
||||
// removeFaces might decide to take down unnessecary faces)
|
||||
// removeFaces might decide to take down unnecessary faces)
|
||||
// Only call if undoable set.
|
||||
labelList removeSplitFaces
|
||||
(
|
||||
|
||||
@ -278,7 +278,7 @@ void Foam::perfectInterface::setRefinement
|
||||
{
|
||||
affectedFaces.erase(pp1.addressing()[i]);
|
||||
}
|
||||
// Remove patch0 from renumbered faces. Should not be nessecary since
|
||||
// Remove patch0 from renumbered faces. Should not be necessary since
|
||||
// patch0 and 1 should not share any point (if created by mergeMeshing)
|
||||
// so affectedFaces should not contain any patch0 faces but you can
|
||||
// never be sure what the user is doing.
|
||||
@ -373,7 +373,7 @@ void Foam::perfectInterface::setRefinement
|
||||
}
|
||||
|
||||
|
||||
// 5. Modify patch0 faces for new points (not really nessecary; see
|
||||
// 5. Modify patch0 faces for new points (not really necessary; see
|
||||
// comment above about patch1 and patch0 never sharing points) and
|
||||
// becoming internal.
|
||||
const boolList& mfFlip =
|
||||
|
||||
@ -713,7 +713,7 @@ void Foam::polyMeshAdder::mergePrimitives
|
||||
}
|
||||
|
||||
// Copy cut face (since cutPoints are copied first no renumbering
|
||||
// nessecary)
|
||||
// necessary)
|
||||
allFaces[allFaceI] = cutFaces[i];
|
||||
allOwner[allFaceI] = mesh0.faceOwner()[mesh0FaceI];
|
||||
allNeighbour[allFaceI] = mesh1.faceOwner()[mesh1FaceI] + mesh0.nCells();
|
||||
|
||||
@ -1022,7 +1022,7 @@ Foam::label Foam::hexRef8::storeMidPointInfo
|
||||
}
|
||||
|
||||
// Check if this call of storeMidPointInfo is the one that completed all
|
||||
// the nessecary information.
|
||||
// the necessary information.
|
||||
|
||||
if (changed && haveTwoAnchors && haveTwoFaceMids)
|
||||
{
|
||||
|
||||
@ -114,7 +114,7 @@ class hexRef8
|
||||
label& zoneFlip
|
||||
) const;
|
||||
|
||||
//- Adds a face on top of existing faceI. Reverses if nessecary.
|
||||
//- Adds a face on top of existing faceI. Reverses if necessary.
|
||||
label addFace
|
||||
(
|
||||
polyTopoChange& meshMod,
|
||||
@ -136,7 +136,7 @@ class hexRef8
|
||||
) const;
|
||||
|
||||
//- Modifies existing faceI for either new owner/neighbour or new face
|
||||
// points. Reverses if nessecary.
|
||||
// points. Reverses if necessary.
|
||||
void modFace
|
||||
(
|
||||
polyTopoChange& meshMod,
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -96,11 +96,11 @@ Foam::basicSymmetryFvPatchField<Type>::snGrad() const
|
||||
{
|
||||
tmp<vectorField> nHat = this->patch().nf();
|
||||
|
||||
const Field<Type> iF(this->patchInternalField());
|
||||
|
||||
return
|
||||
(
|
||||
transform(I - 2.0*sqr(nHat), this->patchInternalField())
|
||||
- this->patchInternalField()
|
||||
)*(this->patch().deltaCoeffs()/2.0);
|
||||
(transform(I - 2.0*sqr(nHat), iF) - iF)
|
||||
*(this->patch().deltaCoeffs()/2.0);
|
||||
}
|
||||
|
||||
|
||||
@ -114,12 +114,11 @@ void Foam::basicSymmetryFvPatchField<Type>::evaluate(const Pstream::commsTypes)
|
||||
|
||||
tmp<vectorField> nHat = this->patch().nf();
|
||||
|
||||
const Field<Type> iF(this->patchInternalField());
|
||||
|
||||
Field<Type>::operator=
|
||||
(
|
||||
(
|
||||
this->patchInternalField()
|
||||
+ transform(I - 2.0*sqr(nHat), this->patchInternalField())
|
||||
)/2.0
|
||||
(iF + transform(I - 2.0*sqr(nHat), iF))/2.0
|
||||
);
|
||||
|
||||
transformFvPatchField<Type>::evaluate();
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -21,23 +21,12 @@ License
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Description
|
||||
snGrad scheme with limited non-orthogonal correction.
|
||||
|
||||
The limiter is controlled by a coefficient with a value between 0 and 1
|
||||
which when 0 switches the correction off and the scheme behaves as
|
||||
uncorrectedSnGrad, when set to 1 the full correction is applied and the
|
||||
scheme behaves as correctedSnGrad and when set to 0.5 the limiter is
|
||||
calculated such that the non-orthogonal contribution does not exceed the
|
||||
orthogonal part.
|
||||
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
#include "fv.H"
|
||||
#include "limitedSnGrad.H"
|
||||
#include "volFields.H"
|
||||
#include "surfaceFields.H"
|
||||
#include "correctedSnGrad.H"
|
||||
#include "localMax.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
@ -68,7 +57,7 @@ limitedSnGrad<Type>::correction
|
||||
{
|
||||
const GeometricField<Type, fvsPatchField, surfaceMesh> corr
|
||||
(
|
||||
correctedSnGrad<Type>(this->mesh()).correction(vf)
|
||||
correctedScheme_().correction(vf)
|
||||
);
|
||||
|
||||
const surfaceScalarField limiter
|
||||
@ -76,7 +65,7 @@ limitedSnGrad<Type>::correction
|
||||
min
|
||||
(
|
||||
limitCoeff_
|
||||
*mag(snGradScheme<Type>::snGrad(vf, deltaCoeffs(vf), "orthSnGrad"))
|
||||
*mag(snGradScheme<Type>::snGrad(vf, deltaCoeffs(vf), "SndGrad"))
|
||||
/(
|
||||
(1 - limitCoeff_)*mag(corr)
|
||||
+ dimensionedScalar("small", corr.dimensions(), SMALL)
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -25,14 +25,20 @@ Class
|
||||
Foam::fv::limitedSnGrad
|
||||
|
||||
Description
|
||||
Central-difference snGrad scheme with limited non-orthogonal correction.
|
||||
Run-time selected snGrad scheme with limited non-orthogonal correction.
|
||||
|
||||
The limiter is controlled by a coefficient with a value between 0 and 1
|
||||
which when 0 switches the correction off and the scheme behaves as
|
||||
uncorrectedSnGrad, when set to 1 the full correction is applied and the
|
||||
scheme behaves as correctedSnGrad and when set to 0.5 the limiter is
|
||||
calculated such that the non-orthogonal contribution does not exceed the
|
||||
orthogonal part.
|
||||
uncorrectedSnGrad, when set to 1 the full correction of the selected scheme
|
||||
is used and when set to 0.5 the limiter is calculated such that the
|
||||
non-orthogonal contribution does not exceed the orthogonal part.
|
||||
|
||||
Format:
|
||||
limited <corrected scheme> <coefficient>;
|
||||
|
||||
or
|
||||
|
||||
limited <coefficient>; // Backward compatibility
|
||||
|
||||
SourceFiles
|
||||
limitedSnGrad.C
|
||||
@ -42,7 +48,7 @@ SourceFiles
|
||||
#ifndef limitedSnGrad_H
|
||||
#define limitedSnGrad_H
|
||||
|
||||
#include "snGradScheme.H"
|
||||
#include "correctedSnGrad.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -65,6 +71,8 @@ class limitedSnGrad
|
||||
{
|
||||
// Private data
|
||||
|
||||
tmp<snGradScheme<Type> > correctedScheme_;
|
||||
|
||||
scalar limitCoeff_;
|
||||
|
||||
|
||||
@ -73,6 +81,34 @@ class limitedSnGrad
|
||||
//- Disallow default bitwise assignment
|
||||
void operator=(const limitedSnGrad&);
|
||||
|
||||
//- Lookup function for the corrected to support backward compatibility
|
||||
// of dictionary specification
|
||||
tmp<snGradScheme<Type> > lookupCorrectedScheme(Istream& schemeData)
|
||||
{
|
||||
token nextToken(schemeData);
|
||||
|
||||
if (nextToken.isNumber())
|
||||
{
|
||||
limitCoeff_ = nextToken.number();
|
||||
return tmp<snGradScheme<Type> >
|
||||
(
|
||||
new correctedSnGrad<Type>(this->mesh())
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
schemeData.putBack(nextToken);
|
||||
tmp<snGradScheme<Type> > tcorrectedScheme
|
||||
(
|
||||
fv::snGradScheme<Type>::New(this->mesh(), schemeData)
|
||||
);
|
||||
|
||||
schemeData >> limitCoeff_;
|
||||
|
||||
return tcorrectedScheme;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public:
|
||||
|
||||
@ -85,22 +121,24 @@ public:
|
||||
//- Construct from mesh
|
||||
limitedSnGrad(const fvMesh& mesh)
|
||||
:
|
||||
snGradScheme<Type>(mesh)
|
||||
snGradScheme<Type>(mesh),
|
||||
correctedScheme_(new correctedSnGrad<Type>(this->mesh())),
|
||||
limitCoeff_(1)
|
||||
{}
|
||||
|
||||
|
||||
//- Construct from mesh and data stream
|
||||
limitedSnGrad(const fvMesh& mesh, Istream& is)
|
||||
limitedSnGrad(const fvMesh& mesh, Istream& schemeData)
|
||||
:
|
||||
snGradScheme<Type>(mesh),
|
||||
limitCoeff_(readScalar(is))
|
||||
correctedScheme_(lookupCorrectedScheme(schemeData))
|
||||
{
|
||||
if (limitCoeff_ < 0 || limitCoeff_ > 1)
|
||||
{
|
||||
FatalIOErrorIn
|
||||
(
|
||||
"limitedSnGrad(const fvMesh& mesh, Istream& is) : ",
|
||||
is
|
||||
"limitedSnGrad(const fvMesh& mesh, Istream& schemeData) : ",
|
||||
schemeData
|
||||
) << "limitCoeff is specified as " << limitCoeff_
|
||||
<< " but should be >= 0 && <= 1"
|
||||
<< exit(FatalIOError);
|
||||
|
||||
@ -825,7 +825,7 @@ void Foam::fvMeshSubset::setLargeCellSubset
|
||||
// 3: face coupled and used by one cell only (so should become normal,
|
||||
// non-coupled patch face)
|
||||
//
|
||||
// Note that this is not really nessecary - but means we can size things
|
||||
// Note that this is not really necessary - but means we can size things
|
||||
// correctly. Also makes handling coupled faces much easier.
|
||||
|
||||
labelList nCellsUsingFace(oldFaces.size(), 0);
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -241,7 +241,7 @@ public:
|
||||
//- Set the subset from all cells with region == currentRegion.
|
||||
// Create "oldInternalFaces" patch for exposed
|
||||
// internal faces (patchID==-1) or use supplied patch.
|
||||
// Handles coupled patches by if nessecary making coupled patch
|
||||
// Handles coupled patches by if necessary making coupled patch
|
||||
// face part of patchID (so uncoupled)
|
||||
void setLargeCellSubset
|
||||
(
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -233,7 +233,7 @@ tmp<GeometricField<Type, fvsPatchField, surfaceMesh> > fvMeshSubset::interpolate
|
||||
}
|
||||
|
||||
|
||||
// Map exposed internal faces. Note: Only nessecary if exposed faces added
|
||||
// Map exposed internal faces. Note: Only necessary if exposed faces added
|
||||
// into existing patch but since we don't know that at this point...
|
||||
forAll(patchFields, patchI)
|
||||
{
|
||||
|
||||
@ -664,10 +664,10 @@ void Foam::PairCollision<CloudType>::collide()
|
||||
{
|
||||
preInteraction();
|
||||
|
||||
wallInteraction();
|
||||
|
||||
parcelInteraction();
|
||||
|
||||
wallInteraction();
|
||||
|
||||
postInteraction();
|
||||
}
|
||||
|
||||
|
||||
@ -637,7 +637,7 @@ void Foam::autoLayerDriver::setNumLayers
|
||||
Info<< nl << "Handling points with inconsistent layer specification ..."
|
||||
<< endl;
|
||||
|
||||
// Get for every point (really only nessecary on patch external points)
|
||||
// Get for every point (really only necessary on patch external points)
|
||||
// the max and min of any patch faces using it.
|
||||
labelList maxLayers(patchNLayers.size(), labelMin);
|
||||
labelList minLayers(patchNLayers.size(), labelMax);
|
||||
|
||||
@ -237,7 +237,7 @@ Foam::label Foam::autoRefineDriver::surfaceOnlyRefine
|
||||
<< " cells (out of " << mesh.globalData().nTotalCells()
|
||||
<< ')' << endl;
|
||||
|
||||
// Stop when no cells to refine or have done minimum nessecary
|
||||
// Stop when no cells to refine or have done minimum necessary
|
||||
// iterations and not enough cells to refine.
|
||||
if
|
||||
(
|
||||
@ -441,7 +441,7 @@ Foam::label Foam::autoRefineDriver::shellRefine
|
||||
<< " cells (out of " << mesh.globalData().nTotalCells()
|
||||
<< ')' << endl;
|
||||
|
||||
// Stop when no cells to refine or have done minimum nessecary
|
||||
// Stop when no cells to refine or have done minimum necessary
|
||||
// iterations and not enough cells to refine.
|
||||
if
|
||||
(
|
||||
|
||||
@ -1121,7 +1121,7 @@ Foam::autoPtr<Foam::mapPolyMesh> Foam::meshRefinement::mergeBaffles
|
||||
mesh_.setInstance(timeName());
|
||||
|
||||
// Update intersections. Recalculate intersections on merged faces since
|
||||
// this seems to give problems? Note: should not be nessecary since
|
||||
// this seems to give problems? Note: should not be necessary since
|
||||
// baffles preserve intersections from when they were created.
|
||||
labelList newExposedFaces(2*couples.size());
|
||||
label newI = 0;
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -589,7 +589,7 @@ Foam::label Foam::edgeIntersections::removeDegenerates
|
||||
// If edge not already marked for retesting
|
||||
if (!affectedEdges[edgeI])
|
||||
{
|
||||
// 1. Check edges close to endpoint and perturb if nessecary.
|
||||
// 1. Check edges close to endpoint and perturb if necessary.
|
||||
|
||||
bool shiftedEdgeEndPoints =
|
||||
inlinePerturb
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -204,7 +204,7 @@ void Foam::orientedSurface::propagateOrientation
|
||||
if (side == triSurfaceTools::UNKNOWN)
|
||||
{
|
||||
// Non-closed surface. Do what? For now behave as if no flipping
|
||||
// nessecary
|
||||
// necessary
|
||||
flipState[nearestFaceI] = NOFLIP;
|
||||
}
|
||||
else if ((side == triSurfaceTools::OUTSIDE) == orientOutside)
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -47,7 +47,7 @@ namespace Foam
|
||||
class triSurfaceSearch;
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class orientedSurface Declaration
|
||||
Class orientedSurface Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class orientedSurface
|
||||
@ -101,7 +101,7 @@ class orientedSurface
|
||||
);
|
||||
|
||||
//- Given nearest point and face check orientation to nearest face
|
||||
// and flip if nessecary (only marked in flipState) and propagate.
|
||||
// and flip if necessary (only marked in flipState) and propagate.
|
||||
static void propagateOrientation
|
||||
(
|
||||
const triSurface&,
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -37,7 +37,6 @@ Foam::scalar Foam::noiseFFT::p0 = 2e-5;
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
// Construct from pressure field
|
||||
Foam::noiseFFT::noiseFFT
|
||||
(
|
||||
const scalar deltat,
|
||||
@ -49,7 +48,6 @@ Foam::noiseFFT::noiseFFT
|
||||
{}
|
||||
|
||||
|
||||
// Construct from pressure field file name
|
||||
Foam::noiseFFT::noiseFFT(const fileName& pFileName, const label skip)
|
||||
:
|
||||
scalarField(),
|
||||
@ -103,7 +101,7 @@ Foam::noiseFFT::noiseFFT(const fileName& pFileName, const label skip)
|
||||
|
||||
deltat_ = T/pData.size();
|
||||
|
||||
scalarField::operator=(pData.shrink());
|
||||
this->transfer(pData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -251,15 +251,12 @@ void reactingOneDim::solveEnergy()
|
||||
|
||||
tmp<volScalarField> alpha(solidThermo_.alpha());
|
||||
|
||||
const surfaceScalarField phiGas(fvc::interpolate(phiHsGas_));
|
||||
|
||||
fvScalarMatrix hEqn
|
||||
(
|
||||
fvm::ddt(rho_, h_)
|
||||
- fvm::laplacian(alpha, h_)
|
||||
==
|
||||
chemistrySh_
|
||||
+ fvc::div(phiGas)
|
||||
);
|
||||
|
||||
if (regionMesh().moving())
|
||||
@ -334,7 +331,7 @@ reactingOneDim::reactingOneDim(const word& modelType, const fvMesh& mesh)
|
||||
"phiGas",
|
||||
time().timeName(),
|
||||
regionMesh(),
|
||||
IOobject::NO_READ,
|
||||
IOobject::READ_IF_PRESENT,
|
||||
IOobject::AUTO_WRITE
|
||||
),
|
||||
regionMesh(),
|
||||
|
||||
@ -190,6 +190,88 @@ bool Foam::regionModels::regionModel::read(const dictionary& dict)
|
||||
}
|
||||
|
||||
|
||||
const Foam::AMIPatchToPatchInterpolation&
|
||||
Foam::regionModels::regionModel::interRegionAMI
|
||||
(
|
||||
const regionModel& nbrRegion,
|
||||
const label regionPatchI,
|
||||
const label nbrPatchI,
|
||||
const bool flip
|
||||
)
|
||||
{
|
||||
label nbrRegionID = findIndex(interRegionAMINames_, nbrRegion.name());
|
||||
|
||||
const fvMesh& nbrRegionMesh = nbrRegion.regionMesh();
|
||||
|
||||
if (nbrRegionID != -1)
|
||||
{
|
||||
if (!interRegionAMI_[nbrRegionID].set(regionPatchI))
|
||||
{
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
const polyPatch& nbrP = nbrRegionMesh.boundaryMesh()[nbrPatchI];
|
||||
|
||||
int oldTag = UPstream::msgType();
|
||||
UPstream::msgType() = oldTag + 1;
|
||||
|
||||
interRegionAMI_[nbrRegionID].set
|
||||
(
|
||||
regionPatchI,
|
||||
new AMIPatchToPatchInterpolation
|
||||
(
|
||||
p,
|
||||
nbrP,
|
||||
faceAreaIntersect::tmMesh,
|
||||
flip
|
||||
)
|
||||
);
|
||||
|
||||
UPstream::msgType() = oldTag;
|
||||
}
|
||||
|
||||
return interRegionAMI_[nbrRegionID][regionPatchI];
|
||||
}
|
||||
else
|
||||
{
|
||||
label nbrRegionID = interRegionAMINames_.size();
|
||||
|
||||
interRegionAMINames_.append(nbrRegion.name());
|
||||
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
const polyPatch& nbrP = nbrRegionMesh.boundaryMesh()[nbrPatchI];
|
||||
|
||||
label nPatch = regionMesh().boundaryMesh().size();
|
||||
|
||||
|
||||
interRegionAMI_.resize(nbrRegionID + 1);
|
||||
|
||||
interRegionAMI_.set
|
||||
(
|
||||
nbrRegionID,
|
||||
new PtrList<AMIPatchToPatchInterpolation>(nPatch)
|
||||
);
|
||||
|
||||
int oldTag = UPstream::msgType();
|
||||
UPstream::msgType() = oldTag + 1;
|
||||
|
||||
interRegionAMI_[nbrRegionID].set
|
||||
(
|
||||
regionPatchI,
|
||||
new AMIPatchToPatchInterpolation
|
||||
(
|
||||
p,
|
||||
nbrP,
|
||||
faceAreaIntersect::tmMesh,
|
||||
flip
|
||||
)
|
||||
);
|
||||
|
||||
UPstream::msgType() = oldTag;
|
||||
|
||||
return interRegionAMI_[nbrRegionID][regionPatchI];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Foam::label Foam::regionModels::regionModel::nbrCoupledPatchID
|
||||
(
|
||||
const regionModel& nbrRegion,
|
||||
@ -234,8 +316,7 @@ Foam::label Foam::regionModels::regionModel::nbrCoupledPatchID
|
||||
|
||||
FatalErrorIn
|
||||
(
|
||||
"Foam::tmp<Foam::Field<Type> > "
|
||||
"Foam::regionModels::regionModel::nbrCoupledPatchID"
|
||||
"Foam::label Foam::regionModels::regionModel::nbrCoupledPatchID"
|
||||
"("
|
||||
"const regionModel& , "
|
||||
"const label"
|
||||
@ -275,7 +356,9 @@ Foam::regionModels::regionModel::regionModel(const fvMesh& mesh)
|
||||
primaryPatchIDs_(),
|
||||
intCoupledPatchIDs_(),
|
||||
regionName_("none"),
|
||||
functions_(*this)
|
||||
functions_(*this),
|
||||
interRegionAMINames_(),
|
||||
interRegionAMI_()
|
||||
{}
|
||||
|
||||
|
||||
|
||||
@ -52,7 +52,7 @@ namespace regionModels
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class regionModel Declaration
|
||||
Class regionModel Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class regionModel
|
||||
@ -122,6 +122,15 @@ protected:
|
||||
regionModelFunctionObjectList functions_;
|
||||
|
||||
|
||||
// Inter-region AMI interpolation caching
|
||||
|
||||
//- List of region names this region is coupled to
|
||||
wordList interRegionAMINames_;
|
||||
|
||||
//- List of AMI objects per coupled region
|
||||
PtrList<PtrList<AMIPatchToPatchInterpolation> > interRegionAMI_;
|
||||
|
||||
|
||||
// Protected member functions
|
||||
|
||||
//- Read control parameters from dictionary
|
||||
@ -130,6 +139,14 @@ protected:
|
||||
//- Read control parameters from dictionary
|
||||
virtual bool read(const dictionary& dict);
|
||||
|
||||
//- Create or return a new inter-region AMI object
|
||||
virtual const Foam::AMIPatchToPatchInterpolation& interRegionAMI
|
||||
(
|
||||
const regionModel& nbrRegion,
|
||||
const label regionPatchI,
|
||||
const label nbrPatchI,
|
||||
const bool flip
|
||||
);
|
||||
|
||||
public:
|
||||
|
||||
@ -162,7 +179,6 @@ public:
|
||||
);
|
||||
|
||||
|
||||
|
||||
//- Destructor
|
||||
virtual ~regionModel();
|
||||
|
||||
@ -236,28 +252,28 @@ public:
|
||||
const label nbrPatchI,
|
||||
const Field<Type>& nbrField,
|
||||
const bool flip = false
|
||||
) const;
|
||||
);
|
||||
|
||||
//- Map patch field from another region model to local patch
|
||||
template<class Type>
|
||||
tmp<Field<Type> > mapRegionPatchField
|
||||
(
|
||||
const word& regionModelName,
|
||||
const regionModel& nbrRegion,
|
||||
const word& fieldName,
|
||||
const label regionPatchI,
|
||||
const bool flip = false
|
||||
) const;
|
||||
);
|
||||
|
||||
//- Map patch internal field from another region model to local
|
||||
// patch
|
||||
template<class Type>
|
||||
tmp<Field<Type> > mapRegionPatchInternalField
|
||||
(
|
||||
const word& regionModelName,
|
||||
const regionModel& nbrRegion,
|
||||
const word& fieldName,
|
||||
const label regionPatchI,
|
||||
const bool flip = false
|
||||
) const;
|
||||
);
|
||||
|
||||
//- Convert a local region field to the primary region
|
||||
template<class Type>
|
||||
|
||||
@ -32,18 +32,13 @@ Foam::regionModels::regionModel::mapRegionPatchField
|
||||
const label nbrPatchI,
|
||||
const Field<Type>& nbrField,
|
||||
const bool flip
|
||||
) const
|
||||
)
|
||||
{
|
||||
const fvMesh& nbrRegionMesh = nbrRegion.regionMesh();
|
||||
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
|
||||
const polyPatch& nbrP = nbrRegionMesh.boundaryMesh()[nbrPatchI];
|
||||
|
||||
int oldTag = UPstream::msgType();
|
||||
UPstream::msgType() = oldTag + 1;
|
||||
|
||||
AMIPatchToPatchInterpolation ami(p, nbrP, faceAreaIntersect::tmMesh, flip);
|
||||
const AMIPatchToPatchInterpolation& ami =
|
||||
interRegionAMI(nbrRegion, regionPatchI, nbrPatchI, flip);
|
||||
|
||||
tmp<Field<Type> > tresult(ami.interpolateToSource(nbrField));
|
||||
|
||||
@ -57,40 +52,28 @@ template<class Type>
|
||||
Foam::tmp<Foam::Field<Type> >
|
||||
Foam::regionModels::regionModel::mapRegionPatchField
|
||||
(
|
||||
const word& regionModelName,
|
||||
const regionModel& nbrRegion,
|
||||
const word& fieldName,
|
||||
const label regionPatchI,
|
||||
const bool flip
|
||||
) const
|
||||
)
|
||||
{
|
||||
typedef GeometricField<Type, fvPatchField, volMesh> fieldType;
|
||||
|
||||
const regionModel& nbrRegion =
|
||||
this->primaryMesh_.lookupObject<regionModel>(regionModelName);
|
||||
|
||||
const fvMesh& nbrRegionMesh = nbrRegion.regionMesh();
|
||||
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
|
||||
if (nbrRegionMesh.foundObject<fieldType>(fieldName))
|
||||
{
|
||||
const fieldType& nbrField =
|
||||
nbrRegionMesh.lookupObject<fieldType>(fieldName);
|
||||
|
||||
const label nbrPatchI = nbrCoupledPatchID(nbrRegion, regionPatchI);
|
||||
|
||||
const polyPatch& nbrP = nbrRegionMesh.boundaryMesh()[nbrPatchI];
|
||||
|
||||
int oldTag = UPstream::msgType();
|
||||
UPstream::msgType() = oldTag + 1;
|
||||
|
||||
AMIPatchToPatchInterpolation ami
|
||||
(
|
||||
p,
|
||||
nbrP,
|
||||
faceAreaIntersect::tmMesh,
|
||||
flip
|
||||
);
|
||||
const AMIPatchToPatchInterpolation& ami =
|
||||
interRegionAMI(nbrRegion, regionPatchI, nbrPatchI, flip);
|
||||
|
||||
const fieldType& nbrField =
|
||||
nbrRegionMesh.lookupObject<fieldType>(fieldName);
|
||||
|
||||
const Field<Type>& nbrFieldp = nbrField.boundaryField()[nbrPatchI];
|
||||
|
||||
@ -102,6 +85,8 @@ Foam::regionModels::regionModel::mapRegionPatchField
|
||||
}
|
||||
else
|
||||
{
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
|
||||
return
|
||||
tmp<Field<Type> >
|
||||
(
|
||||
@ -119,40 +104,28 @@ template<class Type>
|
||||
Foam::tmp<Foam::Field<Type> >
|
||||
Foam::regionModels::regionModel::mapRegionPatchInternalField
|
||||
(
|
||||
const word& regionModelName,
|
||||
const regionModel& nbrRegion,
|
||||
const word& fieldName,
|
||||
const label regionPatchI,
|
||||
const bool flip
|
||||
) const
|
||||
)
|
||||
{
|
||||
typedef GeometricField<Type, fvPatchField, volMesh> fieldType;
|
||||
|
||||
const regionModel& nbrRegion =
|
||||
this->primaryMesh_.lookupObject<regionModel>(regionModelName);
|
||||
|
||||
const fvMesh& nbrRegionMesh = nbrRegion.regionMesh();
|
||||
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
|
||||
if (nbrRegionMesh.foundObject<fieldType>(fieldName))
|
||||
{
|
||||
const fieldType& nbrField =
|
||||
nbrRegionMesh.lookupObject<fieldType>(fieldName);
|
||||
|
||||
const label nbrPatchI = nbrCoupledPatchID(nbrRegion, regionPatchI);
|
||||
|
||||
const polyPatch& nbrP = nbrRegionMesh.boundaryMesh()[nbrPatchI];
|
||||
|
||||
int oldTag = UPstream::msgType();
|
||||
UPstream::msgType() = oldTag + 1;
|
||||
|
||||
AMIPatchToPatchInterpolation ami
|
||||
(
|
||||
p,
|
||||
nbrP,
|
||||
faceAreaIntersect::tmMesh,
|
||||
flip
|
||||
);
|
||||
const AMIPatchToPatchInterpolation& ami =
|
||||
interRegionAMI(nbrRegion, regionPatchI, nbrPatchI, flip);
|
||||
|
||||
const fieldType& nbrField =
|
||||
nbrRegionMesh.lookupObject<fieldType>(fieldName);
|
||||
|
||||
const fvPatchField<Type>& nbrFieldp =
|
||||
nbrField.boundaryField()[nbrPatchI];
|
||||
@ -168,6 +141,8 @@ Foam::regionModels::regionModel::mapRegionPatchInternalField
|
||||
}
|
||||
else
|
||||
{
|
||||
const polyPatch& p = regionMesh().boundaryMesh()[regionPatchI];
|
||||
|
||||
return
|
||||
tmp<Field<Type> >
|
||||
(
|
||||
|
||||
@ -308,7 +308,8 @@ tmp<Foam::fvVectorMatrix> kinematicSingleLayer::solveMomentum
|
||||
+ fvm::div(phi_, U_)
|
||||
==
|
||||
- USp_
|
||||
- fvm::SuSp(rhoSp_, U_)
|
||||
// - fvm::SuSp(rhoSp_, U_)
|
||||
- rhoSp_*U_
|
||||
+ forces_.correct(U_)
|
||||
);
|
||||
|
||||
|
||||
@ -82,6 +82,7 @@ constantRadiation::constantRadiation
|
||||
owner.regionMesh(),
|
||||
dimensionedScalar("one", dimless, 1.0)
|
||||
),
|
||||
absorptivity_(readScalar(coeffs_.lookup("absorptivity"))),
|
||||
timeStart_(readScalar(coeffs_.lookup("timeStart"))),
|
||||
duration_(readScalar(coeffs_.lookup("duration")))
|
||||
{
|
||||
@ -129,7 +130,7 @@ tmp<volScalarField> constantRadiation::Shs()
|
||||
const scalarField& Qr = QrConst_.internalField();
|
||||
const scalarField& alpha = owner_.alpha().internalField();
|
||||
|
||||
Shs = mask_*Qr*alpha;
|
||||
Shs = mask_*Qr*alpha*absorptivity_;
|
||||
}
|
||||
|
||||
return tShs;
|
||||
|
||||
@ -68,6 +68,9 @@ private:
|
||||
//- Radiation mask
|
||||
volScalarField mask_;
|
||||
|
||||
//- Absorptivity
|
||||
scalar absorptivity_;
|
||||
|
||||
//- Time start [s]
|
||||
const scalar timeStart_;
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -451,7 +451,7 @@ Foam::meshTriangulation::meshTriangulation
|
||||
}
|
||||
}
|
||||
|
||||
// Shrink if nessecary (because of invalid triangulations)
|
||||
// Shrink if necessary (because of invalid triangulations)
|
||||
triangles.setSize(triI);
|
||||
faceMap_.setSize(triI);
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2011 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2012 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -45,7 +45,7 @@ namespace Foam
|
||||
{
|
||||
|
||||
/*---------------------------------------------------------------------------*\
|
||||
Class smoothDelta Declaration
|
||||
Class smoothDelta Declaration
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
class smoothDelta
|
||||
@ -62,7 +62,7 @@ public:
|
||||
// Private Member Functions
|
||||
|
||||
//- Update. Gets information from neighbouring face/cell and
|
||||
// uses this to update itself (if nessecary) and return true.
|
||||
// uses this to update itself (if necessary) and return true.
|
||||
template<class TrackingData>
|
||||
inline bool update
|
||||
(
|
||||
|
||||
@ -99,66 +99,58 @@ Foam::tmp<Foam::scalarField> Foam::temperatureCoupledBase::kappa
|
||||
);
|
||||
|
||||
return model.kappaEff(patch_.index());
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case SOLIDTHERMO:
|
||||
{
|
||||
const solidThermo& thermo =
|
||||
mesh.lookupObject<solidThermo>
|
||||
(
|
||||
"thermophysicalProperties"
|
||||
);
|
||||
mesh.lookupObject<solidThermo>("thermophysicalProperties");
|
||||
|
||||
return thermo.kappa(patch_.index());
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case DIRECTIONALSOLIDTHERMO:
|
||||
{
|
||||
const solidThermo& thermo =
|
||||
mesh.lookupObject<solidThermo>
|
||||
(
|
||||
"thermophysicalProperties"
|
||||
);
|
||||
mesh.lookupObject<solidThermo>("thermophysicalProperties");
|
||||
|
||||
const vectorField kappa(thermo.Kappa(patch_.index()));
|
||||
|
||||
tmp<scalarField> tmeanKappa(Tp);
|
||||
scalarField& meanKappa = tmeanKappa();
|
||||
forAll(meanKappa, i)
|
||||
{
|
||||
meanKappa[i] =
|
||||
(
|
||||
thermo.Kappa(patch_.index())()[i].x()
|
||||
+ thermo.Kappa(patch_.index())()[i].y()
|
||||
+ thermo.Kappa(patch_.index())()[i].z()
|
||||
)/3.0;
|
||||
meanKappa[i] = (kappa[i].x() + kappa[i].y() + kappa[i].z())/3.0;
|
||||
}
|
||||
|
||||
return meanKappa;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
||||
case LOOKUP:
|
||||
{
|
||||
if (mesh.objectRegistry::foundObject<volScalarField>(kappaName_))
|
||||
{
|
||||
return patch_.lookupPatchField
|
||||
<
|
||||
volScalarField, scalar
|
||||
>(kappaName_);
|
||||
return patch_.lookupPatchField<volScalarField, scalar>
|
||||
(
|
||||
kappaName_
|
||||
);
|
||||
}
|
||||
else if
|
||||
(
|
||||
mesh.objectRegistry::foundObject
|
||||
<
|
||||
volSymmTensorField
|
||||
>(kappaName_)
|
||||
mesh.objectRegistry::foundObject<volSymmTensorField>
|
||||
(
|
||||
kappaName_
|
||||
)
|
||||
)
|
||||
{
|
||||
const symmTensorField& KWall =
|
||||
patch_.lookupPatchField
|
||||
<
|
||||
volSymmTensorField, scalar
|
||||
>(kappaName_);
|
||||
patch_.lookupPatchField<volSymmTensorField, scalar>
|
||||
(
|
||||
kappaName_
|
||||
);
|
||||
|
||||
const vectorField n(patch_.nf());
|
||||
|
||||
@ -166,7 +158,10 @@ Foam::tmp<Foam::scalarField> Foam::temperatureCoupledBase::kappa
|
||||
}
|
||||
else
|
||||
{
|
||||
FatalErrorIn("temperatureCoupledBase::K() const")
|
||||
FatalErrorIn
|
||||
(
|
||||
"temperatureCoupledBase::kappa(const scalarField&) const"
|
||||
)
|
||||
<< "Did not find field " << kappaName_
|
||||
<< " on mesh " << mesh.name() << " patch " << patch_.name()
|
||||
<< endl
|
||||
@ -178,12 +173,16 @@ Foam::tmp<Foam::scalarField> Foam::temperatureCoupledBase::kappa
|
||||
|
||||
return scalarField(0);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
FatalErrorIn("temperatureCoupledBase::kappa() const")
|
||||
<< "Unimplemented method " << method_ << endl
|
||||
FatalErrorIn
|
||||
(
|
||||
"temperatureCoupledBase::kappa(const scalarField&) const"
|
||||
)
|
||||
<< "Unimplemented method " << method_ << nl
|
||||
<< "Please set 'kappa' to one of " << KMethodTypeNames_.toc()
|
||||
<< " and 'kappaName' to the name of the volScalar"
|
||||
<< " or volSymmTensor field (if kappa=lookup)"
|
||||
|
||||
@ -36,9 +36,6 @@ namespace Foam
|
||||
namespace compressible
|
||||
{
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::
|
||||
|
||||
@ -57,14 +57,14 @@ divSchemes
|
||||
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))+tDragDcu))),p) Gauss linear limited 0.333;
|
||||
laplacian(Db,b) Gauss linear limited 0.333;
|
||||
laplacian(Db,ft) Gauss linear limited 0.333;
|
||||
laplacian(Db,ha) Gauss linear limited 0.333;
|
||||
laplacian(Db,hau) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian((rho*inv((((1)*A(U))+tDragDcu))),p) Gauss linear limited corrected 0.333;
|
||||
laplacian(Db,b) Gauss linear limited corrected 0.333;
|
||||
laplacian(Db,ft) Gauss linear limited corrected 0.333;
|
||||
laplacian(Db,ha) Gauss linear limited corrected 0.333;
|
||||
laplacian(Db,hau) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -74,7 +74,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -58,7 +58,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.5;
|
||||
default Gauss linear limited corrected 0.5;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -68,7 +68,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.5;
|
||||
default limited corrected 0.5;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,7 +40,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.5;
|
||||
default Gauss linear limited corrected 0.5;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(nuEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(kappaEff,T) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(nuEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(kappaEff,T) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited 0.333;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -42,7 +42,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited 0.333;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -42,7 +42,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited 0.333;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -42,7 +42,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited 0.333;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -42,7 +42,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -1 +0,0 @@
|
||||
../heater/fvSchemes
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- 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 fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -1 +0,0 @@
|
||||
../heater/fvSchemes
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- 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 fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -32,7 +32,7 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited 0.333;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -42,7 +42,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -1 +0,0 @@
|
||||
../heater/fvSchemes
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- 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 fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -1 +0,0 @@
|
||||
../heater/fvSchemes
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- 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 fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(alpha,h) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -40,12 +40,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited 0.333;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.333;
|
||||
laplacian(Dp,p_rgh) Gauss linear limited corrected 0.333;
|
||||
laplacian(alphaEff,h) Gauss linear limited corrected 0.333;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.333;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.333;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -39,7 +39,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.33;
|
||||
default Gauss linear limited corrected 0.33;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -49,7 +49,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.33;
|
||||
default limited corrected 0.33;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -37,7 +37,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.5;
|
||||
default Gauss linear limited corrected 0.5;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
|
||||
@ -42,12 +42,12 @@ divSchemes
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
laplacian(muEff,U) Gauss linear limited 0.5;
|
||||
laplacian(DkEff,k) Gauss linear limited 0.5;
|
||||
laplacian(DREff,R) Gauss linear limited 0.5;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited 0.5;
|
||||
laplacian((rho*(1|A(U))),p) Gauss linear limited 0.5;
|
||||
laplacian(alphaEff,e) Gauss linear limited 0.5;
|
||||
laplacian(muEff,U) Gauss linear limited corrected 0.5;
|
||||
laplacian(DkEff,k) Gauss linear limited corrected 0.5;
|
||||
laplacian(DREff,R) Gauss linear limited corrected 0.5;
|
||||
laplacian(DepsilonEff,epsilon) Gauss linear limited corrected 0.5;
|
||||
laplacian((rho*(1|A(U))),p) Gauss linear limited corrected 0.5;
|
||||
laplacian(alphaEff,e) Gauss linear limited corrected 0.5;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
|
||||
@ -45,7 +45,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.33;
|
||||
default Gauss linear limited corrected 0.33;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -55,7 +55,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.33;
|
||||
default limited corrected 0.33;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -1,20 +0,0 @@
|
||||
/*--------------------------------*- 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;
|
||||
location "constant";
|
||||
object freeSurfaceProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
freeSurfacePatch freeSurface;
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -35,7 +35,7 @@ divSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.333;
|
||||
default Gauss linear limited corrected 0.333;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
@ -45,7 +45,7 @@ interpolationSchemes
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default limited 0.333;
|
||||
default limited corrected 0.333;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
@ -21,5 +21,4 @@ turbulence on;
|
||||
|
||||
printCoeffs on;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -42,15 +42,15 @@ gradSchemes
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear limited 0.5;
|
||||
default Gauss linear limited corrected 0.5;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default none;
|
||||
snGrad(pd) limited 0.5;
|
||||
snGrad(rho) limited 0.5;
|
||||
snGrad(alpha1) limited 0.5;
|
||||
snGrad(pd) limited corrected 0.5;
|
||||
snGrad(rho) limited corrected 0.5;
|
||||
snGrad(alpha1) limited corrected 0.5;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
|
||||
Reference in New Issue
Block a user