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:
@ -93,9 +93,9 @@ void readAndRotateFields
|
||||
}
|
||||
|
||||
|
||||
void rotateFields(const Time& runTime, const tensor& T)
|
||||
void rotateFields(const argList& args, const Time& runTime, const tensor& T)
|
||||
{
|
||||
# include "createMesh.H"
|
||||
# include "createNamedMesh.H"
|
||||
|
||||
// Read objects in time directory
|
||||
IOobjectList objects(mesh, runTime.timeName());
|
||||
@ -142,6 +142,7 @@ void rotateFields(const Time& runTime, const tensor& T)
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
# include "addRegionOption.H"
|
||||
argList::addOption("translate", "vector");
|
||||
argList::addOption("rotate", "(vector vector)");
|
||||
argList::addOption("rollPitchYaw", "(roll pitch yaw)");
|
||||
@ -152,13 +153,25 @@ int main(int argc, char *argv[])
|
||||
# include "setRootCase.H"
|
||||
# include "createTime.H"
|
||||
|
||||
word regionName = polyMesh::defaultRegion;
|
||||
fileName meshDir;
|
||||
|
||||
if (args.optionReadIfPresent("region", regionName))
|
||||
{
|
||||
meshDir = regionName/polyMesh::meshSubDir;
|
||||
}
|
||||
else
|
||||
{
|
||||
meshDir = polyMesh::meshSubDir;
|
||||
}
|
||||
|
||||
pointIOField points
|
||||
(
|
||||
IOobject
|
||||
(
|
||||
"points",
|
||||
runTime.findInstance(polyMesh::meshSubDir, "points"),
|
||||
polyMesh::meshSubDir,
|
||||
runTime.findInstance(meshDir, "points"),
|
||||
meshDir,
|
||||
runTime,
|
||||
IOobject::MUST_READ,
|
||||
IOobject::NO_WRITE,
|
||||
@ -197,7 +210,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (args.optionFound("rotateFields"))
|
||||
{
|
||||
rotateFields(runTime, T);
|
||||
rotateFields(args, runTime, T);
|
||||
}
|
||||
}
|
||||
else if (args.optionFound("rollPitchYaw"))
|
||||
@ -220,7 +233,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (args.optionFound("rotateFields"))
|
||||
{
|
||||
rotateFields(runTime, R.R());
|
||||
rotateFields(args, runTime, R.R());
|
||||
}
|
||||
}
|
||||
else if (args.optionFound("yawPitchRoll"))
|
||||
@ -249,7 +262,7 @@ int main(int argc, char *argv[])
|
||||
|
||||
if (args.optionFound("rotateFields"))
|
||||
{
|
||||
rotateFields(runTime, R.R());
|
||||
rotateFields(args, runTime, R.R());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -9,4 +9,5 @@ EXE_LIBS = \
|
||||
-ltecio \
|
||||
-llagrangian \
|
||||
-lfiniteVolume \
|
||||
-lgenericPatchFields \
|
||||
-lmeshTools
|
||||
|
||||
@ -909,6 +909,8 @@ int main(int argc, char *argv[])
|
||||
const polyPatch& pp = patches[patchID];
|
||||
//INTEGER4 strandID = 1 + i;
|
||||
|
||||
if (pp.size() > 0)
|
||||
{
|
||||
Info<< " Writing patch " << patchID << "\t" << pp.name()
|
||||
<< "\tstrand:" << strandID << nl << endl;
|
||||
|
||||
@ -1010,6 +1012,13 @@ int main(int argc, char *argv[])
|
||||
|
||||
writer.writeConnectivity(ipp);
|
||||
}
|
||||
else
|
||||
{
|
||||
Info<< " Skipping zero sized patch " << patchID
|
||||
<< "\t" << pp.name()
|
||||
<< nl << endl;
|
||||
}
|
||||
}
|
||||
writer.writeEnd();
|
||||
|
||||
|
||||
|
||||
@ -122,7 +122,7 @@ Foam::dictionary::dictionary
|
||||
const dictionary& dict
|
||||
)
|
||||
:
|
||||
dictionaryName(parentDict.name() + "::" + dict.name()),
|
||||
dictionaryName(dict.name()),
|
||||
IDLList<entry>(dict, *this),
|
||||
parent_(parentDict)
|
||||
{
|
||||
@ -489,7 +489,7 @@ Foam::dictionary Foam::dictionary::subOrEmptyDict
|
||||
|
||||
if (entryPtr == NULL)
|
||||
{
|
||||
return dictionary(*this, dictionary(keyword));
|
||||
return dictionary(*this, dictionary(name() + "::" + keyword));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@ -2207,6 +2207,7 @@ void Foam::polyTopoChange::addMesh
|
||||
// Extend
|
||||
points_.setCapacity(points_.size() + points.size());
|
||||
pointMap_.setCapacity(pointMap_.size() + points.size());
|
||||
reversePointMap_.setCapacity(reversePointMap_.size() + points.size());
|
||||
pointZone_.resize(pointZone_.size() + points.size()/100);
|
||||
|
||||
// Precalc offset zones
|
||||
@ -2246,6 +2247,7 @@ void Foam::polyTopoChange::addMesh
|
||||
label nAllCells = mesh.nCells();
|
||||
|
||||
cellMap_.setCapacity(cellMap_.size() + nAllCells);
|
||||
reverseCellMap_.setCapacity(reverseCellMap_.size() + nAllCells);
|
||||
cellFromPoint_.resize(cellFromPoint_.size() + nAllCells/100);
|
||||
cellFromEdge_.resize(cellFromEdge_.size() + nAllCells/100);
|
||||
cellFromFace_.resize(cellFromFace_.size() + nAllCells/100);
|
||||
@ -2310,6 +2312,7 @@ void Foam::polyTopoChange::addMesh
|
||||
faceOwner_.setCapacity(faceOwner_.size() + nAllFaces);
|
||||
faceNeighbour_.setCapacity(faceNeighbour_.size() + nAllFaces);
|
||||
faceMap_.setCapacity(faceMap_.size() + nAllFaces);
|
||||
reverseFaceMap_.setCapacity(reverseFaceMap_.size() + nAllFaces);
|
||||
faceFromPoint_.resize(faceFromPoint_.size() + nAllFaces/100);
|
||||
faceFromEdge_.resize(faceFromEdge_.size() + nAllFaces/100);
|
||||
flipFaceFlux_.setCapacity(faces_.size() + nAllFaces);
|
||||
@ -2394,6 +2397,39 @@ void Foam::polyTopoChange::addMesh
|
||||
}
|
||||
|
||||
|
||||
void Foam::polyTopoChange::setCapacity
|
||||
(
|
||||
const label nPoints,
|
||||
const label nFaces,
|
||||
const label nCells
|
||||
)
|
||||
{
|
||||
points_.setCapacity(nPoints);
|
||||
pointMap_.setCapacity(nPoints);
|
||||
reversePointMap_.setCapacity(nPoints);
|
||||
pointZone_.resize(pointZone_.size() + nPoints/100);
|
||||
|
||||
faces_.setCapacity(nFaces);
|
||||
region_.setCapacity(nFaces);
|
||||
faceOwner_.setCapacity(nFaces);
|
||||
faceNeighbour_.setCapacity(nFaces);
|
||||
faceMap_.setCapacity(nFaces);
|
||||
reverseFaceMap_.setCapacity(nFaces);
|
||||
faceFromPoint_.resize(faceFromPoint_.size() + nFaces/100);
|
||||
faceFromEdge_.resize(faceFromEdge_.size() + nFaces/100);
|
||||
flipFaceFlux_.setCapacity(nFaces);
|
||||
faceZone_.resize(faceZone_.size() + nFaces/100);
|
||||
faceZoneFlip_.setCapacity(nFaces);
|
||||
|
||||
cellMap_.setCapacity(nCells);
|
||||
reverseCellMap_.setCapacity(nCells);
|
||||
cellFromPoint_.resize(cellFromPoint_.size() + nCells/100);
|
||||
cellFromEdge_.resize(cellFromEdge_.size() + nCells/100);
|
||||
cellFromFace_.resize(cellFromFace_.size() + nCells/100);
|
||||
cellZone_.setCapacity(nCells);
|
||||
}
|
||||
|
||||
|
||||
Foam::label Foam::polyTopoChange::setAction(const topoAction& action)
|
||||
{
|
||||
if (isType<polyAddPoint>(action))
|
||||
|
||||
@ -472,6 +472,15 @@ public:
|
||||
const labelList& cellZoneMap
|
||||
);
|
||||
|
||||
//- Explicitly pre-size the dynamic storage for expected mesh
|
||||
// size for if construct-without-mesh
|
||||
void setCapacity
|
||||
(
|
||||
const label nPoints,
|
||||
const label nFaces,
|
||||
const label nCells
|
||||
);
|
||||
|
||||
//- Move all points. Incompatible with other topology changes.
|
||||
void movePoints(const pointField& newPoints);
|
||||
|
||||
|
||||
@ -176,7 +176,7 @@ void surfaceSlipDisplacementPointPatchVectorField::calcProjection
|
||||
|
||||
// Knock out any wedge component
|
||||
scalarField offset(start.size(), 0.0);
|
||||
if (wedgePlane_ >= 0 && wedgePlane_ <= vector::nComponents)
|
||||
if (wedgePlane_ >= 0 && wedgePlane_ < vector::nComponents)
|
||||
{
|
||||
forAll(offset, i)
|
||||
{
|
||||
@ -262,7 +262,7 @@ void surfaceSlipDisplacementPointPatchVectorField::calcProjection
|
||||
|
||||
if (interPt.hit())
|
||||
{
|
||||
if (wedgePlane_ >= 0 && wedgePlane_ <= vector::nComponents)
|
||||
if (wedgePlane_ >= 0 && wedgePlane_ < vector::nComponents)
|
||||
{
|
||||
interPt.rawPoint()[wedgePlane_] += offset[i];
|
||||
}
|
||||
|
||||
@ -218,6 +218,69 @@ bool Foam::triSurfaceMesh::isSurfaceClosed() const
|
||||
}
|
||||
|
||||
|
||||
// Gets all intersections after initial one. Adds smallVec and starts tracking
|
||||
// from there.
|
||||
void Foam::triSurfaceMesh::getNextIntersections
|
||||
(
|
||||
const indexedOctree<treeDataTriSurface>& octree,
|
||||
const point& start,
|
||||
const point& end,
|
||||
const vector& smallVec,
|
||||
DynamicList<pointIndexHit, 1, 1>& hits
|
||||
)
|
||||
{
|
||||
const vector dirVec(end-start);
|
||||
const scalar magSqrDirVec(magSqr(dirVec));
|
||||
|
||||
// Initial perturbation amount
|
||||
vector perturbVec(smallVec);
|
||||
|
||||
while (true)
|
||||
{
|
||||
// Start tracking from last hit.
|
||||
point pt = hits[hits.size()-1].hitPoint() + perturbVec;
|
||||
|
||||
if (((pt-start)&dirVec) > magSqrDirVec)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// See if any intersection between pt and end
|
||||
pointIndexHit inter = octree.findLine(pt, end);
|
||||
|
||||
if (!inter.hit())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Check if already found this intersection
|
||||
bool duplicateHit = false;
|
||||
forAllReverse(hits, i)
|
||||
{
|
||||
if (hits[i].index() == inter.index())
|
||||
{
|
||||
duplicateHit = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (duplicateHit)
|
||||
{
|
||||
// Hit same triangle again. Increase perturbVec and try again.
|
||||
perturbVec *= 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
// Proper hit
|
||||
hits.append(inter);
|
||||
// Restore perturbVec
|
||||
perturbVec = smallVec;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::triSurfaceMesh::triSurfaceMesh(const IOobject& io, const triSurface& s)
|
||||
@ -620,27 +683,14 @@ void Foam::triSurfaceMesh::findLineAll
|
||||
hits.clear();
|
||||
hits.append(inter);
|
||||
|
||||
point pt = inter.hitPoint() + smallVec[pointI];
|
||||
|
||||
while (((pt-start[pointI])&dirVec[pointI]) <= magSqrDirVec[pointI])
|
||||
{
|
||||
// See if any intersection between pt and end
|
||||
pointIndexHit inter = octree.findLine(pt, end[pointI]);
|
||||
|
||||
// Check for not hit or hit same triangle as before (can happen
|
||||
// if vector along surface of triangle)
|
||||
if
|
||||
getNextIntersections
|
||||
(
|
||||
!inter.hit()
|
||||
|| (inter.index() == hits.last().index())
|
||||
)
|
||||
{
|
||||
break;
|
||||
}
|
||||
hits.append(inter);
|
||||
|
||||
pt = inter.hitPoint() + smallVec[pointI];
|
||||
}
|
||||
octree,
|
||||
start[pointI],
|
||||
end[pointI],
|
||||
smallVec[pointI],
|
||||
hits
|
||||
);
|
||||
|
||||
info[pointI].transfer(hits);
|
||||
}
|
||||
|
||||
@ -111,6 +111,17 @@ private:
|
||||
// addressing.
|
||||
bool isSurfaceClosed() const;
|
||||
|
||||
//- Steps to next intersection. Adds smallVec and starts tracking
|
||||
// from there.
|
||||
static void getNextIntersections
|
||||
(
|
||||
const indexedOctree<treeDataTriSurface>& octree,
|
||||
const point& start,
|
||||
const point& end,
|
||||
const vector& smallVec,
|
||||
DynamicList<pointIndexHit, 1, 1>& hits
|
||||
);
|
||||
|
||||
//- Disallow default bitwise copy construct
|
||||
triSurfaceMesh(const triSurfaceMesh&);
|
||||
|
||||
|
||||
@ -20,31 +20,9 @@ internalField uniform 80;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -20,32 +20,9 @@ internalField uniform 300;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 300;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -20,37 +20,9 @@ internalField uniform (0.01 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0.01 0 0);
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform (0 0 0);
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -20,31 +20,9 @@ internalField uniform 450;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -21,46 +21,9 @@ internalField uniform 0.01;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minY
|
||||
".*"
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -21,46 +21,9 @@ internalField uniform 0.1;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minY
|
||||
".*"
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -20,36 +20,9 @@ internalField uniform 1e5;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -20,31 +20,9 @@ internalField uniform 8000;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -13,11 +13,6 @@ rm -f constant/polyMesh/sets/*_old
|
||||
runApplication setsToZones -noFlipMap
|
||||
runApplication splitMeshRegions -cellZones
|
||||
|
||||
for i in bottomAir topAir heater leftSolid rightSolid
|
||||
do
|
||||
changeDictionary -region $i >& log.changeDictionary.$i
|
||||
done
|
||||
|
||||
# remove fluid fields from solid regions (important for post-processing)
|
||||
for i in heater leftSolid rightSolid
|
||||
do
|
||||
@ -27,7 +22,12 @@ done
|
||||
# remove solid fields from fluid regions (important for post-processing)
|
||||
for i in bottomAir topAir
|
||||
do
|
||||
rm -f 0*/$i/{cp,K}
|
||||
rm -f 0*/$i/{cp,K,rho}
|
||||
done
|
||||
|
||||
for i in bottomAir topAir heater leftSolid rightSolid
|
||||
do
|
||||
changeDictionary -region $i >& log.changeDictionary.$i
|
||||
done
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,2 @@
|
||||
The 0/ field files contain nonsense patchFields. All interesting
|
||||
work is done using the changeDictionaryDicts.
|
||||
@ -14,9 +14,9 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
RASModel kEpsilon;
|
||||
RASModel laminar;
|
||||
|
||||
turbulence off;
|
||||
turbulence on;
|
||||
|
||||
printCoeffs on;
|
||||
|
||||
|
||||
@ -10,13 +10,11 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
location "constant";
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value ( 0 -9.81 0 );
|
||||
|
||||
value (0 -9.81 0);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -14,9 +14,9 @@ FoamFile
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
RASModel kEpsilon;
|
||||
RASModel laminar;
|
||||
|
||||
turbulence off;
|
||||
turbulence on;
|
||||
|
||||
printCoeffs on;
|
||||
|
||||
|
||||
@ -10,13 +10,11 @@ FoamFile
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
location "constant";
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value ( 0 -9.81 0 );
|
||||
|
||||
value (0 -9.81 0);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -18,6 +18,10 @@ dictionaryReplacement
|
||||
{
|
||||
boundary
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type wall;
|
||||
}
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
offset ( 0 0 0 );
|
||||
@ -43,32 +47,11 @@ dictionaryReplacement
|
||||
|
||||
U
|
||||
{
|
||||
internalField uniform (0 0 0);
|
||||
internalField uniform (0.01 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
|
||||
}
|
||||
bottomAir_to_heater
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
bottomAir_to_rightSolid
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
@ -78,28 +61,16 @@ dictionaryReplacement
|
||||
|
||||
T
|
||||
{
|
||||
internalField uniform 300;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
|
||||
}
|
||||
bottomAir_to_heater
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
bottomAir_to_rightSolid
|
||||
"bottomAir_to_.*"
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
@ -111,58 +82,13 @@ dictionaryReplacement
|
||||
|
||||
epsilon
|
||||
{
|
||||
// Set the value on all bc to non-zero. Not used in simulation
|
||||
// since zeroGradient; only used in initialisation.
|
||||
internalField uniform 0.01;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
bottomAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
bottomAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type compressible::epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
}
|
||||
@ -171,54 +97,12 @@ dictionaryReplacement
|
||||
k
|
||||
{
|
||||
internalField uniform 0.1;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
bottomAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
bottomAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type compressible::kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
}
|
||||
@ -226,53 +110,17 @@ dictionaryReplacement
|
||||
|
||||
p
|
||||
{
|
||||
internalField uniform 1E5;
|
||||
internalField uniform 100000;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
minY
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
bottomAir_to_leftSolid
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
bottomAir_to_heater
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
bottomAir_to_rightSolid
|
||||
".*"
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -18,6 +18,10 @@ dictionaryReplacement
|
||||
{
|
||||
boundary
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type patch;
|
||||
}
|
||||
heater_to_bottomAir
|
||||
{
|
||||
offset ( 0 0 0 );
|
||||
@ -54,50 +58,23 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 300;
|
||||
}
|
||||
"heater_to_.*"
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
minY
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 500;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
heater_to_bottomAir
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
|
||||
}
|
||||
heater_to_leftSolid
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
heater_to_rightSolid
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
heater_to_topAir
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -107,33 +84,9 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minY
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_topAir
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -144,31 +97,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
@ -181,31 +110,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
heater_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
@ -18,6 +18,10 @@ dictionaryReplacement
|
||||
{
|
||||
boundary
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type patch;
|
||||
}
|
||||
leftSolid_to_bottomAir
|
||||
{
|
||||
offset ( 0 0 0 );
|
||||
@ -47,34 +51,12 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_bottomAir
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
|
||||
}
|
||||
leftSolid_to_heater
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
leftSolid_to_topAir
|
||||
"leftSolid_to_.*"
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
@ -90,29 +72,9 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_topAir
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -123,27 +85,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
@ -156,27 +98,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
leftSolid_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
@ -18,6 +18,10 @@ dictionaryReplacement
|
||||
{
|
||||
boundary
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type patch;
|
||||
}
|
||||
rightSolid_to_heater
|
||||
{
|
||||
offset ( 0 0 0 );
|
||||
@ -47,33 +51,12 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
maxX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_heater
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
rightSolid_to_bottomAir
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
rightSolid_to_topAir
|
||||
"rightSolid_to_.*"
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
@ -89,29 +72,9 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
maxX
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_topAir
|
||||
{
|
||||
type zeroGradient;
|
||||
type calculated;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -122,27 +85,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
@ -155,27 +98,7 @@ dictionaryReplacement
|
||||
|
||||
boundaryField
|
||||
{
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_bottomAir
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
rightSolid_to_topAir
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
@ -18,6 +18,18 @@ dictionaryReplacement
|
||||
{
|
||||
boundary
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type wall;
|
||||
}
|
||||
minX
|
||||
{
|
||||
type patch;
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type patch;
|
||||
}
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
offset ( 0 0 0 );
|
||||
@ -43,64 +55,53 @@ dictionaryReplacement
|
||||
|
||||
U
|
||||
{
|
||||
internalField uniform ( 0.01 0 0 );
|
||||
internalField uniform (0.01 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0.01 0 0);
|
||||
value uniform ( 0.01 0 0 );
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type inletOutlet;
|
||||
inletValue uniform (0 0 0);
|
||||
}
|
||||
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
inletValue uniform ( 0 0 0 );
|
||||
value uniform ( 0 0 0 );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
T
|
||||
{
|
||||
internalField uniform 300;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
}
|
||||
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 300;
|
||||
}
|
||||
topAir_to_leftSolid
|
||||
maxX
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
type inletOutlet;
|
||||
inletValue uniform 300;
|
||||
value uniform 300;
|
||||
}
|
||||
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
K K;
|
||||
value uniform 300;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
"topAir_to_.*"
|
||||
{
|
||||
type compressible::turbulentTemperatureCoupledBaffle;
|
||||
neighbourFieldName T;
|
||||
@ -112,10 +113,16 @@ dictionaryReplacement
|
||||
|
||||
epsilon
|
||||
{
|
||||
// Set the value on all bc to non-zero. Not used in simulation
|
||||
// since zeroGradient; only used in initialisation.
|
||||
internalField uniform 0.01;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type compressible::epsilonWallFunction;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
@ -123,44 +130,8 @@ dictionaryReplacement
|
||||
}
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.01;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type inletOutlet;
|
||||
inletValue uniform 0.01;
|
||||
value uniform 0.01;
|
||||
}
|
||||
}
|
||||
@ -169,55 +140,24 @@ dictionaryReplacement
|
||||
k
|
||||
{
|
||||
internalField uniform 0.1;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
".*"
|
||||
{
|
||||
type compressible::kqRWallFunction;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
minX
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
maxX
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxY
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type zeroGradient;
|
||||
value uniform 0.1;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type zeroGradient;
|
||||
type inletOutlet;
|
||||
inletValue uniform 0.1;
|
||||
value uniform 0.1;
|
||||
}
|
||||
}
|
||||
@ -225,59 +165,23 @@ dictionaryReplacement
|
||||
|
||||
p
|
||||
{
|
||||
internalField uniform 1E5;
|
||||
internalField uniform 100000;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
minX
|
||||
".*"
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
|
||||
maxX
|
||||
{
|
||||
type waveTransmissive;
|
||||
//field p;
|
||||
phi phi;
|
||||
rho rho;
|
||||
psi psi;
|
||||
gamma 1.4; // cp/cv
|
||||
fieldInf 1e5;
|
||||
lInf 0.40; // double length of domain
|
||||
value uniform 1e5;
|
||||
}
|
||||
|
||||
minY
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
|
||||
minZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
maxZ
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
|
||||
topAir_to_leftSolid
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
topAir_to_heater
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
}
|
||||
topAir_to_rightSolid
|
||||
{
|
||||
type buoyantPressure;
|
||||
value 1e5;
|
||||
gamma 1.4;
|
||||
fieldInf 100000;
|
||||
lInf 0.4;
|
||||
value uniform 100000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -27,33 +27,7 @@ boundaryField
|
||||
}
|
||||
farFieldMoving
|
||||
{
|
||||
//type slip;
|
||||
type surfaceSlipDisplacement;
|
||||
geometry
|
||||
{
|
||||
top
|
||||
{
|
||||
type searchablePlane;
|
||||
planeType pointAndNormal;
|
||||
basePoint (0 0.0025 0);
|
||||
normalVector (0 1 0);
|
||||
}
|
||||
};
|
||||
|
||||
// Find projection with surface:
|
||||
// fixedNormal : intersections along prespecified direction
|
||||
// pointNormal : intersections along current pointNormal of patch
|
||||
// nearest : nearest point on surface
|
||||
followMode fixedNormal;
|
||||
|
||||
// if fixedNormal : normal
|
||||
projectDirection (0 1 0);
|
||||
|
||||
//- -1 or component to knock out before doing projection
|
||||
//wedgePlane -1;
|
||||
|
||||
//- Points that should remain fixed
|
||||
//frozenPointsZone fixedPointsZone;
|
||||
type slip;
|
||||
}
|
||||
fixedWall
|
||||
{
|
||||
@ -71,28 +45,7 @@ boundaryField
|
||||
}
|
||||
farField
|
||||
{
|
||||
//type slip;
|
||||
type surfaceSlipDisplacement;
|
||||
geometry
|
||||
{
|
||||
top
|
||||
{
|
||||
type searchablePlane;
|
||||
planeType pointAndNormal;
|
||||
basePoint (0 0.0025 0);
|
||||
normalVector (0 1 0);
|
||||
}
|
||||
};
|
||||
|
||||
followMode fixedNormal;
|
||||
|
||||
projectDirection (0 1 0);
|
||||
|
||||
//- -1 or component to knock out before doing projection
|
||||
wedgePlane -1;
|
||||
|
||||
//- Points that should remain fixed
|
||||
//frozenPointsZone fixedPointsZone;
|
||||
type slip;
|
||||
}
|
||||
back
|
||||
{
|
||||
|
||||
@ -17,9 +17,6 @@ FoamFile
|
||||
|
||||
application pimpleDyMFoam;
|
||||
|
||||
// For surfaceSlip boundary conditions
|
||||
libs ("libfvMotionSolvers.so");
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
3
wmake/rules/SiCortex64Gcc/tecio
Normal file
3
wmake/rules/SiCortex64Gcc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linux64Gcc/tecio
Normal file
3
wmake/rules/linux64Gcc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linux64Gcc42/tecio
Normal file
3
wmake/rules/linux64Gcc42/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linux64Gcc43/tecio
Normal file
3
wmake/rules/linux64Gcc43/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linux64Gcc44/tecio
Normal file
3
wmake/rules/linux64Gcc44/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linux64Icc/tecio
Normal file
3
wmake/rules/linux64Icc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUX64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxGcc/tecio
Normal file
3
wmake/rules/linuxGcc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxGcc42/tecio
Normal file
3
wmake/rules/linuxGcc42/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxGcc43/tecio
Normal file
3
wmake/rules/linuxGcc43/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxGcc44/tecio
Normal file
3
wmake/rules/linuxGcc44/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxIA64Gcc/tecio
Normal file
3
wmake/rules/linuxIA64Gcc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUXI64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxIA64Icc/tecio
Normal file
3
wmake/rules/linuxIA64Icc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DLINUXI64 -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
3
wmake/rules/linuxIcc/tecio
Normal file
3
wmake/rules/linuxIcc/tecio
Normal file
@ -0,0 +1,3 @@
|
||||
TECIOFLAGS =-DMAKEARCHIVE -DLINUX -DUSEENUM -DTHREED -U_WIN32
|
||||
TECIOINC =
|
||||
TECIOLIBS =
|
||||
Reference in New Issue
Block a user