mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
TUT: Adding new MPPICDyMFoam and uncoupledKinematicParcelDyMFoam tutorials
STY: Style and header-content changes
This commit is contained in:
committed by
Andrew Heather
parent
6d4e72dc3f
commit
06a0bf1868
@ -111,7 +111,6 @@ int main(int argc, char *argv[])
|
||||
continuousPhaseTransport.correct();
|
||||
muc = rhoc*continuousPhaseTransport.nu();
|
||||
|
||||
Info<< "Evolving " << kinematicCloud.name() << endl;
|
||||
kinematicCloud.evolve();
|
||||
|
||||
// Update continuous phase volume fraction field
|
||||
|
||||
@ -470,13 +470,6 @@ void Foam::particle::hitCyclicAMIPatch
|
||||
const label sendFacei = cpp.whichFace(facei_);
|
||||
const label receiveFacei = cpp.pointFace(sendFacei, displacement, pos);
|
||||
|
||||
if (false)
|
||||
{
|
||||
Info<< "My new pos : " << pos << endl;
|
||||
Info<< "Particle " << origId() << " crossing AMI from " << cpp.name()
|
||||
<< " to " << receiveCpp.name() << endl << endl;
|
||||
}
|
||||
|
||||
if (receiveFacei < 0)
|
||||
{
|
||||
// If the patch face of the particle is not known assume that the
|
||||
@ -495,9 +488,15 @@ void Foam::particle::hitCyclicAMIPatch
|
||||
vector displacementT = displacement;
|
||||
cpp.reverseTransformDirection(displacementT, sendFacei);
|
||||
|
||||
// NOTE: The ray used to find the hit location accross the AMI might not
|
||||
// be consistent in the displacement direction. Therefore a particle can
|
||||
// be looping accross AMI patches indefinitely. Advancing the particle
|
||||
// trajectory inside the cell is a possible solution.
|
||||
const vector dispDir = cpp.fraction()*displacementT;
|
||||
stepFraction_ += cpp.fraction();
|
||||
locate
|
||||
(
|
||||
pos,
|
||||
pos + dispDir,
|
||||
&displacementT,
|
||||
mesh_.faceOwner()[facei_],
|
||||
false,
|
||||
@ -534,7 +533,6 @@ void Foam::particle::hitCyclicAMIPatch
|
||||
|
||||
//if (onBoundaryFace())
|
||||
{
|
||||
//DebugVar("On boudanry")
|
||||
// vector receiveNormal, receiveDisplacement;
|
||||
// patchData(receiveNormal, receiveDisplacement);
|
||||
//
|
||||
|
||||
@ -758,12 +758,10 @@ void Foam::KinematicCloud<CloudType>::preEvolve
|
||||
|
||||
if (this->dampingModel().active())
|
||||
{
|
||||
DebugVar("dampingModel")
|
||||
this->dampingModel().cacheFields(true);
|
||||
}
|
||||
if (this->packingModel().active())
|
||||
{
|
||||
DebugVar("packingModel")
|
||||
this->packingModel().cacheFields(true);
|
||||
}
|
||||
|
||||
@ -895,6 +893,48 @@ void Foam::KinematicCloud<CloudType>::info()
|
||||
injectors_.info(Info);
|
||||
this->surfaceFilm().info(Info);
|
||||
this->patchInteraction().info(Info);
|
||||
|
||||
if (this->packingModel().active())
|
||||
{
|
||||
tmp<volScalarField> alpha = this->theta();
|
||||
|
||||
if (this->db().time().writeTime())
|
||||
{
|
||||
alpha().write();
|
||||
}
|
||||
|
||||
const scalar alphaMin = gMin(alpha().primitiveField());
|
||||
const scalar alphaMax = gMax(alpha().primitiveField());
|
||||
|
||||
Info<< " Min cell volume fraction = " << alphaMin << endl;
|
||||
Info<< " Max cell volume fraction = " << alphaMax << endl;
|
||||
|
||||
if (alphaMax < SMALL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
scalar nMin = GREAT;
|
||||
|
||||
forAll(this->mesh().cells(), celli)
|
||||
{
|
||||
const label n = this->cellOccupancy()[celli].size();
|
||||
|
||||
if (n > 0)
|
||||
{
|
||||
const scalar nPack = n*alphaMax/alpha()[celli];
|
||||
|
||||
if (nPack < nMin)
|
||||
{
|
||||
nMin = nPack;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
reduce(nMin, minOp<scalar>());
|
||||
|
||||
Info<< " Min dense number of parcels = " << nMin << endl;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -361,7 +361,6 @@ bool Foam::KinematicParcel<ParcelType>::move
|
||||
|
||||
const scalar dt = (p.stepFraction() - sfrac)*trackTime;
|
||||
|
||||
|
||||
// Avoid problems with extremely small timesteps
|
||||
if (dt > ROOTVSMALL)
|
||||
{
|
||||
@ -386,12 +385,11 @@ bool Foam::KinematicParcel<ParcelType>::move
|
||||
{
|
||||
cloud.functions().postFace(p, ttd.keepParticle);
|
||||
}
|
||||
|
||||
cloud.functions().postMove(p, dt, start, ttd.keepParticle);
|
||||
|
||||
if (p.active() && p.onFace() && ttd.keepParticle)
|
||||
{
|
||||
p.hitFace(f*s - d, cloud, ttd);
|
||||
p.hitFace(s, cloud, ttd);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -294,7 +294,7 @@ bool Foam::LocalInteraction<CloudType>::correct
|
||||
// Calculate motion relative to patch velocity
|
||||
U -= Up;
|
||||
|
||||
if (mag(U) < this->Urmax())
|
||||
if (mag(Up) > 0 && mag(U) < this->Urmax())
|
||||
{
|
||||
WarningInFunction
|
||||
<< "Particle U the same as patch "
|
||||
|
||||
@ -162,7 +162,7 @@ Foam::PatchInteractionModel<CloudType>::PatchInteractionModel
|
||||
UName_(this->coeffDict().template getOrDefault<word>("U", "U")),
|
||||
escapedParcels_(0),
|
||||
escapedMass_(0.0),
|
||||
Urmax_(this->coeffDict().template getOrDefault<scalar>("UrMax", 1e-4))
|
||||
Urmax_(this->coeffDict().template getOrDefault<scalar>("UrMax", 0))
|
||||
{}
|
||||
|
||||
|
||||
|
||||
@ -211,7 +211,7 @@ bool Foam::StandardWallInteraction<CloudType>::correct
|
||||
// Calculate motion relative to patch velocity
|
||||
U -= Up;
|
||||
|
||||
if (mag(U) < this->Urmax())
|
||||
if (mag(Up) > 0 && mag(U) < this->Urmax())
|
||||
{
|
||||
WarningInFunction
|
||||
<< "Particle U the same as patch "
|
||||
|
||||
@ -92,8 +92,6 @@ Foam::AveragingMethod<Type>::New
|
||||
dict.template getOrDefault<word>(typeName, "basic")
|
||||
);
|
||||
|
||||
//Info<< "Selecting averaging method " << modelType << endl;
|
||||
|
||||
auto cstrIter = dictionaryConstructorTablePtr_->cfind(modelType);
|
||||
|
||||
if (!cstrIter.found())
|
||||
|
||||
@ -52,6 +52,11 @@ License
|
||||
#include "makeSprayParcelAtomizationModels.H"
|
||||
#include "makeSprayParcelBreakupModels.H"
|
||||
|
||||
// MPPIC sub-models
|
||||
#include "makeMPPICParcelDampingModels.H"
|
||||
#include "makeMPPICParcelIsotropyModels.H"
|
||||
#include "makeMPPICParcelPackingModels.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
makeParcelCloudFunctionObjects(basicSprayCloud);
|
||||
@ -78,5 +83,9 @@ makeParticleForceModelType(DistortedSphereDragForce, basicSprayCloud);
|
||||
makeSprayParcelAtomizationModels(basicSprayCloud);
|
||||
makeSprayParcelBreakupModels(basicSprayCloud);
|
||||
|
||||
// MPPIC sub-models
|
||||
makeMPPICParcelDampingModels(basicSprayCloud);
|
||||
makeMPPICParcelIsotropyModels(basicSprayCloud);
|
||||
makeMPPICParcelPackingModels(basicSprayCloud);
|
||||
|
||||
// ************************************************************************* //
|
||||
|
||||
@ -1069,7 +1069,8 @@ const
|
||||
{
|
||||
const face& f = srcPatch[srcFacei];
|
||||
|
||||
pointHit ray = f.ray(tgtPoint, n, srcPoints);
|
||||
pointHit ray =
|
||||
f.ray(tgtPoint, n, srcPoints, intersection::algorithm::VISIBLE);
|
||||
|
||||
if (ray.hit())
|
||||
{
|
||||
@ -1078,6 +1079,7 @@ const
|
||||
}
|
||||
else if (ray.distance() < nearest.distance())
|
||||
{
|
||||
|
||||
nearest = ray;
|
||||
nearestFacei = srcFacei;
|
||||
}
|
||||
@ -1116,7 +1118,8 @@ const
|
||||
{
|
||||
const face& f = tgtPatch[tgtFacei];
|
||||
|
||||
pointHit ray = f.ray(srcPoint, n, tgtPoints);
|
||||
pointHit ray =
|
||||
f.ray(srcPoint, n, tgtPoints, intersection::algorithm::VISIBLE);
|
||||
|
||||
if (ray.hit())
|
||||
{
|
||||
@ -1131,9 +1134,9 @@ const
|
||||
nearestFacei = tgtFacei;
|
||||
}
|
||||
}
|
||||
|
||||
if (nearest.hit() || nearest.eligibleMiss())
|
||||
{
|
||||
|
||||
srcPoint = nearest.rawPoint();
|
||||
return nearestFacei;
|
||||
}
|
||||
|
||||
@ -568,6 +568,7 @@ Foam::cyclicAMIPolyPatch::cyclicAMIPolyPatch
|
||||
coupledPolyPatch(name, size, start, index, bm, patchType, transform),
|
||||
nbrPatchName_(word::null),
|
||||
nbrPatchID_(-1),
|
||||
fraction_(Zero),
|
||||
rotationAxis_(Zero),
|
||||
rotationCentre_(Zero),
|
||||
rotationAngleDefined_(false),
|
||||
@ -603,6 +604,7 @@ Foam::cyclicAMIPolyPatch::cyclicAMIPolyPatch
|
||||
nbrPatchName_(dict.getOrDefault<word>("neighbourPatch", word::null)),
|
||||
coupleGroup_(dict),
|
||||
nbrPatchID_(-1),
|
||||
fraction_(dict.getOrDefault<scalar>("fraction", Zero)),
|
||||
rotationAxis_(Zero),
|
||||
rotationCentre_(Zero),
|
||||
rotationAngleDefined_(false),
|
||||
@ -707,6 +709,7 @@ Foam::cyclicAMIPolyPatch::cyclicAMIPolyPatch
|
||||
nbrPatchName_(pp.nbrPatchName_),
|
||||
coupleGroup_(pp.coupleGroup_),
|
||||
nbrPatchID_(-1),
|
||||
fraction_(pp.fraction_),
|
||||
rotationAxis_(pp.rotationAxis_),
|
||||
rotationCentre_(pp.rotationCentre_),
|
||||
rotationAngleDefined_(pp.rotationAngleDefined_),
|
||||
@ -742,6 +745,7 @@ Foam::cyclicAMIPolyPatch::cyclicAMIPolyPatch
|
||||
nbrPatchName_(nbrPatchName),
|
||||
coupleGroup_(pp.coupleGroup_),
|
||||
nbrPatchID_(-1),
|
||||
fraction_(pp.fraction_),
|
||||
rotationAxis_(pp.rotationAxis_),
|
||||
rotationCentre_(pp.rotationCentre_),
|
||||
rotationAngleDefined_(pp.rotationAngleDefined_),
|
||||
@ -784,6 +788,7 @@ Foam::cyclicAMIPolyPatch::cyclicAMIPolyPatch
|
||||
nbrPatchName_(pp.nbrPatchName_),
|
||||
coupleGroup_(pp.coupleGroup_),
|
||||
nbrPatchID_(-1),
|
||||
fraction_(pp.fraction_),
|
||||
rotationAxis_(pp.rotationAxis_),
|
||||
rotationCentre_(pp.rotationCentre_),
|
||||
rotationAngleDefined_(pp.rotationAngleDefined_),
|
||||
@ -1153,6 +1158,8 @@ void Foam::cyclicAMIPolyPatch::write(Ostream& os) const
|
||||
os.writeEntry("tgtSize", tgtFaceIDs_.size());
|
||||
os.writeEntry("moveFaceCentres", moveFaceCentres_);
|
||||
}
|
||||
|
||||
os.writeEntryIfDifferent<scalar>("fraction", Zero, fraction_);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -97,6 +97,9 @@ protected:
|
||||
//- Index of other half
|
||||
mutable label nbrPatchID_;
|
||||
|
||||
//- Particle displacement fraction accross AMI
|
||||
const scalar fraction_;
|
||||
|
||||
|
||||
// Transformations
|
||||
|
||||
@ -357,6 +360,9 @@ public:
|
||||
//- Neighbour patch ID
|
||||
virtual label neighbPatchID() const;
|
||||
|
||||
//- Particle fraction increase between AMI pathces
|
||||
inline scalar fraction() const;
|
||||
|
||||
//- Does this side own the patch?
|
||||
virtual bool owner() const;
|
||||
|
||||
|
||||
@ -58,6 +58,13 @@ inline const Foam::word& Foam::cyclicAMIPolyPatch::neighbPatchName() const
|
||||
return nbrPatchName_;
|
||||
}
|
||||
|
||||
|
||||
inline Foam::scalar Foam::cyclicAMIPolyPatch::fraction() const
|
||||
{
|
||||
return fraction_;
|
||||
}
|
||||
|
||||
|
||||
inline const Foam::scalarListList& Foam::cyclicAMIPolyPatch::weights() const
|
||||
{
|
||||
if (owner())
|
||||
|
||||
40
tutorials/lagrangian/MPPICDyMFoam/column/0/U.air
Normal file
40
tutorials/lagrangian/MPPICDyMFoam/column/0/U.air
Normal file
@ -0,0 +1,40 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format binary;
|
||||
class volVectorField;
|
||||
object U;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -1 0 0 0 0];
|
||||
|
||||
internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
sides
|
||||
{
|
||||
type symmetry;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type noSlip;
|
||||
}
|
||||
|
||||
bottom
|
||||
{
|
||||
type noSlip;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
42
tutorials/lagrangian/MPPICDyMFoam/column/0/p
Normal file
42
tutorials/lagrangian/MPPICDyMFoam/column/0/p
Normal file
@ -0,0 +1,42 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object p;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
sides
|
||||
{
|
||||
type symmetry;
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
bottom
|
||||
{
|
||||
type fixedFluxPressure;
|
||||
value $internalField;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
27
tutorials/lagrangian/MPPICDyMFoam/column/constant/dynamicMeshDict
Executable file
27
tutorials/lagrangian/MPPICDyMFoam/column/constant/dynamicMeshDict
Executable file
@ -0,0 +1,27 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object dynamicMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dynamicFvMesh dynamicMotionSolverFvMesh;
|
||||
|
||||
motionSolver solidBody;
|
||||
|
||||
solidBodyMotionFunction oscillatingLinearMotion;
|
||||
|
||||
amplitude (3 0 0);
|
||||
omega 0.1; // rad/s (.5 rps)
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
21
tutorials/lagrangian/MPPICDyMFoam/column/constant/g
Normal file
21
tutorials/lagrangian/MPPICDyMFoam/column/constant/g
Normal file
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value (0 0 -9.81);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,187 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object kinematicCloudProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solution
|
||||
{
|
||||
active true;
|
||||
coupled true;
|
||||
transient yes;
|
||||
cellValueSourceCorrection off;
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
rho.air cell;
|
||||
U.air cellPoint;
|
||||
mu.air cell;
|
||||
}
|
||||
|
||||
averagingMethod dual;
|
||||
|
||||
integrationSchemes
|
||||
{
|
||||
U Euler;
|
||||
}
|
||||
|
||||
sourceTerms
|
||||
{
|
||||
schemes
|
||||
{
|
||||
U semiImplicit 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
constantProperties
|
||||
{
|
||||
rho0 2526;
|
||||
alphaMax 0.9;
|
||||
}
|
||||
|
||||
subModels
|
||||
{
|
||||
particleForces
|
||||
{
|
||||
ErgunWenYuDrag
|
||||
{
|
||||
alphac alpha.air;
|
||||
}
|
||||
}
|
||||
|
||||
injectionModels
|
||||
{
|
||||
model1
|
||||
{
|
||||
type manualInjection;
|
||||
massTotal 0;
|
||||
parcelBasisType fixed;
|
||||
nParticle 750;
|
||||
SOI 0;
|
||||
positionsFile "kinematicCloudPositions";
|
||||
U0 (0 0 0);
|
||||
sizeDistribution
|
||||
{
|
||||
type fixedValue;
|
||||
fixedValueDistribution
|
||||
{
|
||||
value 0.0003;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dispersionModel none;
|
||||
|
||||
patchInteractionModel localInteraction;
|
||||
|
||||
localInteractionCoeffs
|
||||
{
|
||||
patches
|
||||
(
|
||||
sides
|
||||
{
|
||||
type rebound;
|
||||
e 1;
|
||||
mu 0.09;
|
||||
}
|
||||
top
|
||||
{
|
||||
type rebound;
|
||||
e 1;
|
||||
mu 0.09;
|
||||
}
|
||||
bottom
|
||||
{
|
||||
type rebound;
|
||||
e 1;
|
||||
mu 0.09;
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
heatTransferModel none;
|
||||
|
||||
surfaceFilmModel none;
|
||||
|
||||
packingModel implicit;
|
||||
|
||||
explicitCoeffs
|
||||
{
|
||||
particleStressModel
|
||||
{
|
||||
type HarrisCrighton;
|
||||
alphaPacked 0.6;
|
||||
pSolid 10.0;
|
||||
beta 2.0;
|
||||
eps 1.0e-7;
|
||||
}
|
||||
correctionLimitingMethod
|
||||
{
|
||||
type absolute;
|
||||
e 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
implicitCoeffs
|
||||
{
|
||||
alphaMin 0.0001;
|
||||
rhoMin 1.0;
|
||||
applyLimiting true;
|
||||
applyGravity true;
|
||||
particleStressModel
|
||||
{
|
||||
type HarrisCrighton;
|
||||
alphaPacked 0.6;
|
||||
pSolid 10.0;
|
||||
beta 2.0;
|
||||
eps 1.0e-2;
|
||||
}
|
||||
}
|
||||
|
||||
dampingModel none;//relaxation;
|
||||
|
||||
relaxationCoeffs
|
||||
{
|
||||
timeScaleModel
|
||||
{
|
||||
type nonEquilibrium;
|
||||
alphaPacked 0.6;
|
||||
e 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
isotropyModel stochastic;
|
||||
|
||||
stochasticCoeffs
|
||||
{
|
||||
timeScaleModel
|
||||
{
|
||||
type isotropic;
|
||||
alphaPacked 0.6;
|
||||
e 0.9;
|
||||
}
|
||||
}
|
||||
|
||||
stochasticCollisionModel none;
|
||||
|
||||
radiation off;
|
||||
}
|
||||
|
||||
|
||||
cloudFunctions
|
||||
{}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object transportProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
continuousPhase air;
|
||||
|
||||
rho.air 1.2;
|
||||
|
||||
transportModel Newtonian;
|
||||
nu 1e-05;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,20 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object turbulenceProperties.air;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,74 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 0.001;
|
||||
|
||||
vertices
|
||||
(
|
||||
(-9.2 -9.2 0)
|
||||
( 9.2 -9.2 0)
|
||||
( 9.2 9.2 0)
|
||||
(-9.2 9.2 0)
|
||||
(-9.2 -9.2 300)
|
||||
( 9.2 -9.2 300)
|
||||
( 9.2 9.2 300)
|
||||
(-9.2 9.2 300)
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 4 5 6 7) (1 1 40) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
sides
|
||||
{
|
||||
type symmetry;
|
||||
faces
|
||||
(
|
||||
(0 1 5 4)
|
||||
(1 2 6 5)
|
||||
(2 3 7 6)
|
||||
(3 0 4 7)
|
||||
);
|
||||
}
|
||||
|
||||
top
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(4 5 6 7)
|
||||
);
|
||||
}
|
||||
|
||||
bottom
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 1 2 3)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
48
tutorials/lagrangian/MPPICDyMFoam/column/system/controlDict
Normal file
48
tutorials/lagrangian/MPPICDyMFoam/column/system/controlDict
Normal file
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
application MPPICFoam;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 1;
|
||||
|
||||
deltaT 2e-4;
|
||||
|
||||
writeControl runTime;
|
||||
|
||||
writeInterval 0.01;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 8;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
58
tutorials/lagrangian/MPPICDyMFoam/column/system/fvSchemes
Normal file
58
tutorials/lagrangian/MPPICDyMFoam/column/system/fvSchemes
Normal file
@ -0,0 +1,58 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
d2dt2Schemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
|
||||
div(alphaPhi.air,U.air) Gauss linearUpwindV unlimited;
|
||||
div(((alpha.air*nuEff.air)*dev2(T(grad(U.air))))) Gauss linear;
|
||||
|
||||
div(phiGByA,kinematicCloud:alpha) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
89
tutorials/lagrangian/MPPICDyMFoam/column/system/fvSolution
Normal file
89
tutorials/lagrangian/MPPICDyMFoam/column/system/fvSolution
Normal file
@ -0,0 +1,89 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
p
|
||||
{
|
||||
solver GAMG;
|
||||
tolerance 1e-6;
|
||||
relTol 0.01;
|
||||
smoother GaussSeidel;
|
||||
}
|
||||
|
||||
pFinal
|
||||
{
|
||||
$p;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
pcorrFinal
|
||||
{
|
||||
$p;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
U.air
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-05;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
U.airFinal
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-05;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
kinematicCloud:alpha
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
}
|
||||
}
|
||||
|
||||
PIMPLE
|
||||
{
|
||||
nOuterCorrectors 1;
|
||||
nCorrectors 2;
|
||||
momentumPredictor yes;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
pRefCell 0;
|
||||
pRefValue 0;
|
||||
checkMeshCourantNo no;
|
||||
correctPhi no;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
fields
|
||||
{
|
||||
".*" 1;
|
||||
}
|
||||
equations
|
||||
{
|
||||
".*" 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
48
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/T
Normal file
48
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/T
Normal file
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 350;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
55
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/U.air
Normal file
55
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/U.air
Normal file
@ -0,0 +1,55 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volVectorField;
|
||||
object U.air;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -1 0 0 0 0];
|
||||
|
||||
internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
rotor
|
||||
{
|
||||
|
||||
type movingWallVelocity;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
54
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/p
Normal file
54
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/0/p
Normal file
@ -0,0 +1,54 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object p;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 2 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 0;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type fixedValue;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,34 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object dynamicMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dynamicFvMesh dynamicMotionSolverFvMesh;
|
||||
|
||||
motionSolverLibs (fvMotionSolvers);
|
||||
|
||||
motionSolver solidBody;
|
||||
|
||||
cellZone rotor;
|
||||
|
||||
solidBodyMotionFunction rotatingMotion;
|
||||
rotatingMotionCoeffs
|
||||
{
|
||||
origin (0.225 0.15 0);
|
||||
axis (0 0 1);
|
||||
omega 5; // rad/s
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
21
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/constant/g
Normal file
21
tutorials/lagrangian/MPPICDyMFoam/denseRotor2DAMI/constant/g
Normal file
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value ( 0 -9.81 0 );
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,170 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object particleProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solution
|
||||
{
|
||||
active true;
|
||||
coupled false;
|
||||
transient yes;
|
||||
cellValueSourceCorrection off;
|
||||
maxCo 0.3;
|
||||
|
||||
averagingMethod dual;
|
||||
|
||||
sourceTerms
|
||||
{
|
||||
schemes
|
||||
{
|
||||
U semiImplicit 1;
|
||||
}
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
rho cell;
|
||||
U.air cellPoint;
|
||||
mu.air cell;
|
||||
rho.air cell;
|
||||
}
|
||||
|
||||
integrationSchemes
|
||||
{
|
||||
U Euler;
|
||||
}
|
||||
}
|
||||
|
||||
constantProperties
|
||||
{
|
||||
rho0 1000;
|
||||
alphaMax 0.9;
|
||||
}
|
||||
|
||||
subModels
|
||||
{
|
||||
particleForces
|
||||
{
|
||||
gravity;
|
||||
|
||||
ErgunWenYuDrag
|
||||
{
|
||||
alphac alpha.air;
|
||||
}
|
||||
}
|
||||
|
||||
injectionModels
|
||||
{
|
||||
model1
|
||||
{
|
||||
type patchInjection;
|
||||
parcelBasisType fixed;
|
||||
patch inlet;
|
||||
U0 (0.3 0 0);
|
||||
nParticle 1;
|
||||
parcelsPerSecond 20000;
|
||||
|
||||
sizeDistribution
|
||||
{
|
||||
type uniform;
|
||||
uniformDistribution
|
||||
{
|
||||
minValue 5e-03;
|
||||
maxValue 5e-03;
|
||||
}
|
||||
}
|
||||
|
||||
flowRateProfile constant 1;
|
||||
massTotal 2000000;
|
||||
SOI 0;
|
||||
duration 2;
|
||||
}
|
||||
}
|
||||
|
||||
dispersionModel none;
|
||||
|
||||
patchInteractionModel none;
|
||||
|
||||
heatTransferModel none;
|
||||
|
||||
surfaceFilmModel none;
|
||||
|
||||
collisionModel none;
|
||||
|
||||
patchInteractionModel standardWallInteraction;
|
||||
|
||||
standardWallInteractionCoeffs
|
||||
{
|
||||
type rebound; // stick, escape
|
||||
e 0.6; // elasticity coeff
|
||||
mu 0.09; // tan coeff
|
||||
UrMax 1e-4; // relative U of particle after collision
|
||||
// bellow which the particle is considered
|
||||
// at the same U as the patch and deleted
|
||||
}
|
||||
|
||||
stochasticCollisionModel none;
|
||||
|
||||
packingModel explicit;
|
||||
|
||||
explicitCoeffs
|
||||
{
|
||||
particleStressModel
|
||||
{
|
||||
type HarrisCrighton;
|
||||
alphaPacked 0.6;
|
||||
pSolid 8.0;
|
||||
beta 2;
|
||||
eps 1.0e-7;
|
||||
}
|
||||
correctionLimitingMethod
|
||||
{
|
||||
type absolute;
|
||||
e 0.7;
|
||||
}
|
||||
}
|
||||
|
||||
dampingModel none;
|
||||
|
||||
relaxationCoeffs
|
||||
{
|
||||
timeScaleModel
|
||||
{
|
||||
type isotropic;
|
||||
alphaPacked 0.6;
|
||||
e 0.88;
|
||||
}
|
||||
}
|
||||
|
||||
isotropyModel none;
|
||||
|
||||
stochasticCoeffs
|
||||
{
|
||||
timeScaleModel
|
||||
{
|
||||
type isotropic;
|
||||
alphaPacked 0.6;
|
||||
e 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
radiation off;
|
||||
}
|
||||
|
||||
|
||||
cloudFunctions
|
||||
{}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,25 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object transportProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
continuousPhase air;
|
||||
|
||||
rho.air 1.2;
|
||||
|
||||
transportModel Newtonian;
|
||||
nu 1e-05;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,20 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object turbulenceProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,421 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
(0 0 0) //p0
|
||||
(0 0.1 0) //p1
|
||||
(0 0.2 0) //p2
|
||||
(0 0.3 0) //p3
|
||||
|
||||
(0.075 0 0) //p4
|
||||
(0.116747 0.0875 0) //p5
|
||||
(0.116747 0.2125 0) //p6
|
||||
(0.075 0.3 0) //p7
|
||||
|
||||
(0.225 -0.2 0) //p8
|
||||
(0.225 0 0) //p9
|
||||
(0.225 0.025 0) //p10
|
||||
(0.225 0.275 0) //p11
|
||||
(0.225 0.3 0) //p12
|
||||
(0.225 0.5 0) //p13
|
||||
|
||||
(0.375 -0.2 0) //p14
|
||||
(0.375 0 0) //p15
|
||||
(0.333253 0.0875 0) //p16
|
||||
(0.333253 0.2125 0) //p17
|
||||
(0.375 0.3 0) //p18
|
||||
(0.375 0.5 0) //p19
|
||||
|
||||
(1.225 -0.2 0) //p20
|
||||
(1.225 0 0) //p21
|
||||
(1.225 0.0875 0) //p22
|
||||
(1.225 0.2125 0) //p23
|
||||
(1.225 0.3 0) //p24
|
||||
(1.225 0.5 0) //p25
|
||||
|
||||
//domain back
|
||||
(0 0 0.10) //p26
|
||||
(0 0.1 0.10) //p27
|
||||
(0 0.2 0.10) //p28
|
||||
(0 0.3 0.10) //p29
|
||||
|
||||
(0.075 0 0.10) //p30
|
||||
(0.116747 0.0875 0.10) //p31
|
||||
(0.116747 0.2125 0.10) //p32
|
||||
(0.075 0.3 0.10) //p33
|
||||
|
||||
(0.225 -0.2 0.10) //p34
|
||||
(0.225 0 0.10) //p35
|
||||
(0.225 0.025 0.10) //p36
|
||||
(0.225 0.275 0.10) //p37
|
||||
(0.225 0.3 0.10) //p38
|
||||
(0.225 0.5 0.10) //p39
|
||||
|
||||
(0.375 -0.2 0.10) //p40
|
||||
(0.375 0 0.10) //p41
|
||||
(0.333253 0.0875 0.10) //p42
|
||||
(0.333253 0.2125 0.10) //p43
|
||||
(0.375 0.3 0.10) //p44
|
||||
(0.375 0.5 0.10) //p45
|
||||
|
||||
(1.225 -0.2 0.10) //p46
|
||||
(1.225 0 0.10) //p47
|
||||
(1.225 0.0875 0.10) //p48
|
||||
(1.225 0.2125 0.10) //p49
|
||||
(1.225 0.3 0.10) //p50
|
||||
(1.225 0.5 0.10) //p51
|
||||
|
||||
//rotorfront
|
||||
(0.192524 0.13125 0) //p52
|
||||
(0.121077 0.09 0) //p53
|
||||
(0.116747 0.0875 0) //p54
|
||||
|
||||
(0.192524 0.16875 0) //p55
|
||||
(0.121077 0.21 0) //p56
|
||||
(0.116747 0.2125 0) //p57
|
||||
(0.192524 0.16875 0) //p58
|
||||
(0.121077 0.21 0) //p59
|
||||
(0.116747 0.2125 0) //p60
|
||||
|
||||
(0.225 0.1875 0) //61
|
||||
(0.225 0.27 0) //62
|
||||
(0.225 0.275 0) //63
|
||||
(0.225 0.1875 0) //64
|
||||
(0.225 0.27 0) //65
|
||||
(0.225 0.275 0) //66
|
||||
|
||||
(0.257476 0.16875 0) //67
|
||||
(0.328923 0.21 0) //68
|
||||
(0.333253 0.2125 0) //69
|
||||
(0.257476 0.16875 0) //70
|
||||
(0.328923 0.21 0) //71
|
||||
(0.333253 0.2125 0) //72
|
||||
|
||||
(0.257476 0.13125 0) //73
|
||||
(0.328923 0.09 0) //74
|
||||
(0.333253 0.0875 0) //75
|
||||
(0.257476 0.13125 0) //76
|
||||
(0.328923 0.09 0) //77
|
||||
(0.333253 0.0875 0) //78
|
||||
|
||||
(0.225 0.1125 0) //79
|
||||
(0.225 0.03 0) //80
|
||||
(0.225 0.025 0) //81
|
||||
(0.225 0.1125 0) //82
|
||||
(0.225 0.03 0) //83
|
||||
(0.225 0.025 0) //84
|
||||
|
||||
(0.192524 0.13125 0) //p85
|
||||
(0.121077 0.09 0) //p86
|
||||
(0.116747 0.0875 0) //p87
|
||||
|
||||
|
||||
//rotorback
|
||||
(0.192524 0.13125 0.1) //p88
|
||||
(0.121077 0.09 0.1) //p89
|
||||
(0.116747 0.0875 0.1) //p90
|
||||
|
||||
(0.192524 0.16875 0.1) //p91
|
||||
(0.121077 0.21 0.1) //p92
|
||||
(0.116747 0.2125 0.1) //p93
|
||||
(0.192524 0.16875 0.1) //p94
|
||||
(0.121077 0.21 0.1) //p95
|
||||
(0.116747 0.2125 0.1) //p96
|
||||
|
||||
(0.225 0.1875 0.1) //97
|
||||
(0.225 0.27 0.1) //98
|
||||
(0.225 0.275 0.1) //99
|
||||
(0.225 0.1875 0.1) //100
|
||||
(0.225 0.27 0.1) //101
|
||||
(0.225 0.275 0.1) //102
|
||||
|
||||
(0.257476 0.16875 0.1) //103
|
||||
(0.328923 0.21 0.1) //104
|
||||
(0.333253 0.2125 0.1) //105
|
||||
(0.257476 0.16875 0.1) //106
|
||||
(0.328923 0.21 0.1) //107
|
||||
(0.333253 0.2125 0.1) //108
|
||||
|
||||
(0.257476 0.13125 0.1) //109
|
||||
(0.328923 0.09 0.1) //110
|
||||
(0.333253 0.0875 0.1) //111
|
||||
(0.257476 0.13125 0.1) //112
|
||||
(0.328923 0.09 0.1) //113
|
||||
(0.333253 0.0875 0.1) //114
|
||||
|
||||
(0.225 0.1125 0.1) //115
|
||||
(0.225 0.03 0.1) //116
|
||||
(0.225 0.025 0.1) //117
|
||||
(0.225 0.1125 0.1) //118
|
||||
(0.225 0.03 0.1) //119
|
||||
(0.225 0.025 0.1) //120
|
||||
|
||||
(0.192524 0.13125 0.1) //p121
|
||||
(0.121077 0.09 0.1) //p122
|
||||
(0.116747 0.0875 0.1) //p123
|
||||
);
|
||||
|
||||
|
||||
blocks
|
||||
(
|
||||
//domain
|
||||
hex (0 4 5 1 26 30 31 27) domain (5 5 1) simpleGrading (1 1 1) //b0
|
||||
hex (1 5 6 2 27 31 32 28) domain (5 5 1) simpleGrading (1 1 1) //b1
|
||||
hex (2 6 7 3 28 32 33 29) domain (5 5 1) simpleGrading (1 1 1) //b2
|
||||
|
||||
hex (4 9 10 5 30 35 36 31) domain (5 5 1) simpleGrading (1 1 1) //b3
|
||||
hex (6 11 12 7 32 37 38 33) domain (5 5 1) simpleGrading (1 1 1) //b4
|
||||
|
||||
hex (8 14 15 9 34 40 41 35) domain (5 10 1) simpleGrading (1 1 1) //b5
|
||||
hex (9 15 16 10 35 41 42 36) domain (5 5 1) simpleGrading (1 1 1) //b6
|
||||
hex (11 17 18 12 37 43 44 38) domain (5 5 1) simpleGrading (1 1 1) //b7
|
||||
hex (12 18 19 13 38 44 45 39) domain (5 10 1) simpleGrading (1 1 1) //b8
|
||||
|
||||
hex (14 20 21 15 40 46 47 41) domain (20 10 1) simpleGrading (1 1 1)//b9
|
||||
hex (15 21 22 16 41 47 48 42) domain (20 5 1) simpleGrading (1 1 1)//b10
|
||||
hex (16 22 23 17 42 48 49 43) domain (20 5 1) simpleGrading (1 1 1)//b11
|
||||
hex (17 23 24 18 43 49 50 44) domain (20 5 1) simpleGrading (1 1 1)//b12
|
||||
hex (18 24 25 19 44 50 51 45) domain (20 10 1) simpleGrading (1 1 1)//b13
|
||||
|
||||
//rotor
|
||||
hex (52 55 56 53 88 91 92 89) rotor (5 5 1) simpleGrading (1 1 1) //b14
|
||||
hex (58 61 62 59 94 97 98 95) rotor (5 5 1) simpleGrading (1 1 1) //b15
|
||||
hex (64 67 68 65 100 103 104 101) rotor (5 5 1) simpleGrading (1 1 1) //b16
|
||||
hex (70 73 74 71 106 109 110 107) rotor (5 5 1) simpleGrading (1 1 1) //b17
|
||||
hex (76 79 80 77 112 115 116 113) rotor (5 5 1) simpleGrading (1 1 1) //b18
|
||||
hex (82 85 86 83 118 121 122 119) rotor (5 5 1) simpleGrading (1 1 1) //b19
|
||||
|
||||
hex (53 56 57 54 89 92 93 90) rotor (5 1 1) simpleGrading (1 1 1) //b20
|
||||
hex (59 62 63 60 95 98 99 96) rotor (5 1 1) simpleGrading (1 1 1) //b21
|
||||
hex (65 68 69 66 101 104 105 102) rotor (5 1 1) simpleGrading (1 1 1) //b22
|
||||
hex (71 74 75 72 107 110 111 108) rotor (5 1 1) simpleGrading (1 1 1) //b23
|
||||
hex (77 80 81 78 113 116 117 114) rotor (5 1 1) simpleGrading (1 1 1) //b24
|
||||
hex (83 86 87 84 119 122 123 120) rotor (5 1 1) simpleGrading (1 1 1) //b25
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
///// outer AMI
|
||||
arc 10 5 (0.1625 0.041747 0)
|
||||
arc 5 6 (0.1 0.15 0)
|
||||
arc 6 11 (0.1625 0.258253 0)
|
||||
arc 11 17 (0.2875 0.258253 0)
|
||||
arc 17 16 (0.35 0.15 0)
|
||||
arc 16 10 (0.2875 0.041747 0)
|
||||
|
||||
arc 36 31 (0.1625 0.041747 0.1)
|
||||
arc 31 32 (0.1 0.15 0.1)
|
||||
arc 32 37 (0.1625 0.258253 0.1)
|
||||
arc 37 43 (0.2875 0.258253 0.1)
|
||||
arc 43 42 (0.35 0.15 0.1)
|
||||
arc 42 36 (0.2875 0.041747 0.1)
|
||||
|
||||
//inner AMI
|
||||
arc 84 87 (0.1625 0.041747 0)
|
||||
arc 54 57 (0.1 0.15 0)
|
||||
arc 60 63 (0.1625 0.258253 0)
|
||||
arc 66 69 (0.2875 0.258253 0)
|
||||
arc 72 75 (0.35 0.15 0)
|
||||
arc 78 81 (0.2875 0.041747 0)
|
||||
|
||||
arc 120 123 (0.1625 0.041747 0.1)
|
||||
arc 90 93 (0.1 0.15 0.1)
|
||||
arc 96 99 (0.1625 0.258253 0.1)
|
||||
arc 102 105 (0.2875 0.258253 0.1)
|
||||
arc 108 111 (0.35 0.15 0.1)
|
||||
arc 114 117 (0.2875 0.041747 0.1)
|
||||
|
||||
//outer rotor
|
||||
|
||||
arc 83 86 (0.165 0.046077 0)
|
||||
arc 53 56 (0.105 0.15 0)
|
||||
arc 59 62 (0.165 0.253923 0)
|
||||
arc 65 68 (0.285 0.253923 0)
|
||||
arc 71 74 (0.345 0.15 0)
|
||||
arc 77 80 (0.285 0.046077 0)
|
||||
|
||||
arc 119 122 (0.165 0.046077 0.1)
|
||||
arc 89 92 (0.105 0.15 0.1)
|
||||
arc 95 98 (0.165 0.253923 0.1)
|
||||
arc 101 104 (0.285 0.253923 0.1)
|
||||
arc 107 110 (0.345 0.15 0.1)
|
||||
arc 113 116 (0.285 0.046077 0.1)
|
||||
|
||||
//inner rotor
|
||||
|
||||
arc 82 85 (0.20625 0.117524 0)
|
||||
arc 52 55 (0.1875 0.15 0)
|
||||
arc 58 61 (0.20625 0.182476 0)
|
||||
arc 64 67 (0.24375 0.182476 0)
|
||||
arc 70 73 (0.2625 0.15 0)
|
||||
arc 76 79 (0.24375 0.117524 0)
|
||||
|
||||
arc 118 121 (0.20625 0.117524 0.1)
|
||||
arc 88 91 (0.1875 0.15 0.1)
|
||||
arc 94 97 (0.20625 0.182476 0.1)
|
||||
arc 100 103 (0.24375 0.182476 0.1)
|
||||
arc 106 109 (0.2625 0.15 0.1)
|
||||
arc 112 115 (0.24375 0.117524 0.1)
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
walls
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 4 30 26)
|
||||
(4 9 35 30)
|
||||
(9 8 34 35)
|
||||
(3 7 33 29)
|
||||
(7 12 38 33)
|
||||
(12 13 39 38)
|
||||
);
|
||||
}
|
||||
|
||||
floor
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(8 14 40 34)
|
||||
(14 20 46 40)
|
||||
);
|
||||
}
|
||||
|
||||
roof
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(13 19 45 39)
|
||||
(19 25 51 45)
|
||||
);
|
||||
}
|
||||
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 1 27 26)
|
||||
(1 2 28 27)
|
||||
(2 3 29 28)
|
||||
);
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(20 21 47 46)
|
||||
(21 22 48 47)
|
||||
(22 23 49 48)
|
||||
(23 24 50 49)
|
||||
(24 25 51 50)
|
||||
);
|
||||
}
|
||||
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
fraction 0.05;
|
||||
matchTolerance 0.0001;
|
||||
transform noOrdering;
|
||||
neighbourPatch AMI1b;
|
||||
faces
|
||||
(
|
||||
(10 5 31 36)
|
||||
(5 6 32 31)
|
||||
(6 11 37 32)
|
||||
(11 17 43 37)
|
||||
(17 16 42 43)
|
||||
(16 10 36 42)
|
||||
);
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
fraction 0.05;
|
||||
matchTolerance 0.0001;
|
||||
transform noOrdering;
|
||||
neighbourPatch AMI1a;
|
||||
faces
|
||||
(
|
||||
|
||||
(84 87 123 120)
|
||||
(54 57 93 90)
|
||||
(60 63 99 96)
|
||||
(66 69 105 102)
|
||||
(72 75 111 108)
|
||||
(78 81 117 114)
|
||||
);
|
||||
}
|
||||
|
||||
rotor
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(82 83 119 118)
|
||||
(83 84 120 119)
|
||||
(79 80 116 115)
|
||||
(80 81 117 116)
|
||||
|
||||
(85 86 122 121)
|
||||
(86 87 123 122)
|
||||
(52 53 89 88)
|
||||
(53 54 90 89)
|
||||
|
||||
(55 56 92 91)
|
||||
(56 57 93 92)
|
||||
(58 59 95 94)
|
||||
(59 60 96 95)
|
||||
|
||||
(61 62 98 97)
|
||||
(62 63 99 98)
|
||||
(64 65 101 100)
|
||||
(65 66 102 101)
|
||||
|
||||
(67 68 104 103)
|
||||
(68 69 105 104)
|
||||
(70 71 107 106)
|
||||
(71 72 108 107)
|
||||
|
||||
(76 77 113 112)
|
||||
(77 78 114 113)
|
||||
(73 74 110 109)
|
||||
(74 75 111 110)
|
||||
|
||||
(82 85 121 118)
|
||||
(52 55 91 88)
|
||||
(58 61 97 94)
|
||||
(64 67 103 100)
|
||||
(70 73 109 106)
|
||||
(76 79 115 112)
|
||||
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
DebugSwitches
|
||||
{
|
||||
particle 0;
|
||||
}
|
||||
|
||||
application MPPICDyMFoam;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 2;
|
||||
|
||||
deltaT 1e-3;
|
||||
|
||||
writeControl runTime;
|
||||
|
||||
writeInterval 0.01;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat binary;
|
||||
|
||||
writePrecision 6;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable no;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,58 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
d2dt2Schemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
|
||||
div(alphaPhi.air,U.air) Gauss linearUpwindV limited 1;
|
||||
div(((alpha.air*nuEff.air)*dev2(T(grad(U.air))))) Gauss linear;
|
||||
|
||||
div(phiGByA,kinematicCloud:alpha) Gauss linear;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,84 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
"(p|pcorr)"
|
||||
{
|
||||
solver GAMG;
|
||||
tolerance 1e-7;
|
||||
relTol 0.01;
|
||||
smoother GaussSeidel;
|
||||
maxIter 20;
|
||||
}
|
||||
|
||||
"(pFinal|pcorrFinal)"
|
||||
{
|
||||
$p;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
U.air
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-05;
|
||||
relTol 0.1;
|
||||
}
|
||||
|
||||
U.airFinal
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-05;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
kinematicCloud:alpha
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother symGaussSeidel;
|
||||
tolerance 1e-06;
|
||||
relTol 0;
|
||||
}
|
||||
}
|
||||
|
||||
PIMPLE
|
||||
{
|
||||
nOuterCorrectors 1;
|
||||
nCorrectors 3;
|
||||
momentumPredictor no;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
pRefCell 0;
|
||||
pRefValue 0;
|
||||
checkMeshCourantNo no;
|
||||
correctPhi no;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
fields
|
||||
{
|
||||
".*" 1;
|
||||
}
|
||||
equations
|
||||
{
|
||||
".*" 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object T;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 0 0 1 0 0 0];
|
||||
|
||||
internalField uniform 350;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,54 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volVectorField;
|
||||
object U;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -1 0 0 0 0];
|
||||
|
||||
internalField uniform (0 0 0);
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
rotor
|
||||
{
|
||||
type movingWallVelocity;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type fixedValue;
|
||||
value uniform (0 0 0);
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,48 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class volScalarField;
|
||||
object p;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [1 -1 -2 0 0 0 0];
|
||||
|
||||
internalField uniform 100000;
|
||||
|
||||
boundaryField
|
||||
{
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
".*"
|
||||
{
|
||||
type zeroGradient;
|
||||
value $internalField;
|
||||
}
|
||||
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
8
tutorials/lagrangian/uncoupledKinematicParcelDyMFoam/rotor2DAMI/Allclean
Executable file
8
tutorials/lagrangian/uncoupledKinematicParcelDyMFoam/rotor2DAMI/Allclean
Executable file
@ -0,0 +1,8 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/CleanFunctions # Tutorial clean functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
cleanCase0
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
12
tutorials/lagrangian/uncoupledKinematicParcelDyMFoam/rotor2DAMI/Allrun
Executable file
12
tutorials/lagrangian/uncoupledKinematicParcelDyMFoam/rotor2DAMI/Allrun
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
cd "${0%/*}" || exit # Run from this directory
|
||||
. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions # Tutorial run functions
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
restore0Dir
|
||||
|
||||
runApplication blockMesh
|
||||
|
||||
runApplication $(getApplication)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@ -0,0 +1,34 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object dynamicMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dynamicFvMesh dynamicMotionSolverFvMesh;
|
||||
|
||||
motionSolverLibs (fvMotionSolvers);
|
||||
|
||||
motionSolver solidBody;
|
||||
|
||||
cellZone rotor;
|
||||
|
||||
solidBodyMotionFunction rotatingMotion;
|
||||
rotatingMotionCoeffs
|
||||
{
|
||||
origin (0.225 0.15 0);
|
||||
axis (0 0 1);
|
||||
omega 5; // rad/s
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value ( 0 -9.81 0 );
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,119 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object particleProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solution
|
||||
{
|
||||
active true;
|
||||
coupled false;
|
||||
transient yes;
|
||||
cellValueSourceCorrection off;
|
||||
maxCo 0.3;
|
||||
|
||||
sourceTerms
|
||||
{
|
||||
schemes
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
rho cell;
|
||||
U cellPoint;
|
||||
thermo:mu cell;
|
||||
}
|
||||
|
||||
integrationSchemes
|
||||
{
|
||||
U Euler;
|
||||
}
|
||||
}
|
||||
|
||||
constantProperties
|
||||
{
|
||||
|
||||
rho0 1000;
|
||||
constantVolume true;
|
||||
|
||||
}
|
||||
|
||||
subModels
|
||||
{
|
||||
particleForces
|
||||
{
|
||||
//sphereDrag;
|
||||
//gravity;
|
||||
}
|
||||
|
||||
injectionModels
|
||||
{
|
||||
model1
|
||||
{
|
||||
type patchInjection;
|
||||
parcelBasisType fixed;
|
||||
patch inlet;
|
||||
U0 (0.1 0 0);
|
||||
nParticle 1;
|
||||
parcelsPerSecond 20000000;
|
||||
|
||||
sizeDistribution
|
||||
{
|
||||
type uniform;
|
||||
uniformDistribution
|
||||
{
|
||||
minValue 50e-06;
|
||||
maxValue 50e-06;
|
||||
}
|
||||
}
|
||||
|
||||
flowRateProfile constant 1;
|
||||
massTotal 2000000;
|
||||
SOI 0;
|
||||
duration 0.00001;
|
||||
}
|
||||
}
|
||||
|
||||
dispersionModel none;
|
||||
|
||||
patchInteractionModel none;
|
||||
|
||||
heatTransferModel none;
|
||||
|
||||
surfaceFilmModel none;
|
||||
|
||||
collisionModel none;
|
||||
|
||||
patchInteractionModel standardWallInteraction;
|
||||
|
||||
standardWallInteractionCoeffs
|
||||
{
|
||||
type rebound; // stick, escape
|
||||
e 0.9; // optional - elasticity coeff
|
||||
mu 0.09; // optional - restitution coeff
|
||||
UrMax 1e-4;
|
||||
}
|
||||
|
||||
stochasticCollisionModel none;
|
||||
|
||||
radiation off;
|
||||
}
|
||||
|
||||
|
||||
cloudFunctions
|
||||
{}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,47 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object thermophysicalProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiThermo;
|
||||
mixture pureMixture;
|
||||
transport const;
|
||||
thermo eConst;
|
||||
equationOfState perfectGas;
|
||||
specie specie;
|
||||
energy sensibleInternalEnergy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
specie
|
||||
{
|
||||
molWeight 28.9;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Cv 712;
|
||||
Hf 0;
|
||||
}
|
||||
transport
|
||||
{
|
||||
mu 1.8e-05;
|
||||
Pr 0.7;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,20 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object turbulenceProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,420 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
scale 1;
|
||||
|
||||
vertices
|
||||
(
|
||||
(0 0 0) //p0
|
||||
(0 0.1 0) //p1
|
||||
(0 0.2 0) //p2
|
||||
(0 0.3 0) //p3
|
||||
|
||||
(0.075 0 0) //p4
|
||||
(0.116747 0.0875 0) //p5
|
||||
(0.116747 0.2125 0) //p6
|
||||
(0.075 0.3 0) //p7
|
||||
|
||||
(0.225 -0.2 0) //p8
|
||||
(0.225 0 0) //p9
|
||||
(0.225 0.025 0) //p10
|
||||
(0.225 0.275 0) //p11
|
||||
(0.225 0.3 0) //p12
|
||||
(0.225 0.5 0) //p13
|
||||
|
||||
(0.375 -0.2 0) //p14
|
||||
(0.375 0 0) //p15
|
||||
(0.333253 0.0875 0) //p16
|
||||
(0.333253 0.2125 0) //p17
|
||||
(0.375 0.3 0) //p18
|
||||
(0.375 0.5 0) //p19
|
||||
|
||||
(1.225 -0.2 0) //p20
|
||||
(1.225 0 0) //p21
|
||||
(1.225 0.0875 0) //p22
|
||||
(1.225 0.2125 0) //p23
|
||||
(1.225 0.3 0) //p24
|
||||
(1.225 0.5 0) //p25
|
||||
|
||||
//domain back
|
||||
(0 0 0.10) //p26
|
||||
(0 0.1 0.10) //p27
|
||||
(0 0.2 0.10) //p28
|
||||
(0 0.3 0.10) //p29
|
||||
|
||||
(0.075 0 0.10) //p30
|
||||
(0.116747 0.0875 0.10) //p31
|
||||
(0.116747 0.2125 0.10) //p32
|
||||
(0.075 0.3 0.10) //p33
|
||||
|
||||
(0.225 -0.2 0.10) //p34
|
||||
(0.225 0 0.10) //p35
|
||||
(0.225 0.025 0.10) //p36
|
||||
(0.225 0.275 0.10) //p37
|
||||
(0.225 0.3 0.10) //p38
|
||||
(0.225 0.5 0.10) //p39
|
||||
|
||||
(0.375 -0.2 0.10) //p40
|
||||
(0.375 0 0.10) //p41
|
||||
(0.333253 0.0875 0.10) //p42
|
||||
(0.333253 0.2125 0.10) //p43
|
||||
(0.375 0.3 0.10) //p44
|
||||
(0.375 0.5 0.10) //p45
|
||||
|
||||
(1.225 -0.2 0.10) //p46
|
||||
(1.225 0 0.10) //p47
|
||||
(1.225 0.0875 0.10) //p48
|
||||
(1.225 0.2125 0.10) //p49
|
||||
(1.225 0.3 0.10) //p50
|
||||
(1.225 0.5 0.10) //p51
|
||||
|
||||
//rotorfront
|
||||
|
||||
(0.192524 0.13125 0) //p52
|
||||
(0.121077 0.09 0) //p53
|
||||
(0.116747 0.0875 0) //p54
|
||||
|
||||
(0.192524 0.16875 0) //p55
|
||||
(0.121077 0.21 0) //p56
|
||||
(0.116747 0.2125 0) //p57
|
||||
(0.192524 0.16875 0) //p58
|
||||
(0.121077 0.21 0) //p59
|
||||
(0.116747 0.2125 0) //p60
|
||||
|
||||
(0.225 0.1875 0) //61
|
||||
(0.225 0.27 0) //62
|
||||
(0.225 0.275 0) //63
|
||||
(0.225 0.1875 0) //64
|
||||
(0.225 0.27 0) //65
|
||||
(0.225 0.275 0) //66
|
||||
|
||||
(0.257476 0.16875 0) //67
|
||||
(0.328923 0.21 0) //68
|
||||
(0.333253 0.2125 0) //69
|
||||
(0.257476 0.16875 0) //70
|
||||
(0.328923 0.21 0) //71
|
||||
(0.333253 0.2125 0) //72
|
||||
|
||||
(0.257476 0.13125 0) //73
|
||||
(0.328923 0.09 0) //74
|
||||
(0.333253 0.0875 0) //75
|
||||
(0.257476 0.13125 0) //76
|
||||
(0.328923 0.09 0) //77
|
||||
(0.333253 0.0875 0) //78
|
||||
|
||||
(0.225 0.1125 0) //79
|
||||
(0.225 0.03 0) //80
|
||||
(0.225 0.025 0) //81
|
||||
(0.225 0.1125 0) //82
|
||||
(0.225 0.03 0) //83
|
||||
(0.225 0.025 0) //84
|
||||
|
||||
(0.192524 0.13125 0) //p85
|
||||
(0.121077 0.09 0) //p86
|
||||
(0.116747 0.0875 0) //p87
|
||||
|
||||
|
||||
//rotorback
|
||||
|
||||
(0.192524 0.13125 0.1) //p88
|
||||
(0.121077 0.09 0.1) //p89
|
||||
(0.116747 0.0875 0.1) //p90
|
||||
|
||||
(0.192524 0.16875 0.1) //p91
|
||||
(0.121077 0.21 0.1) //p92
|
||||
(0.116747 0.2125 0.1) //p93
|
||||
(0.192524 0.16875 0.1) //p94
|
||||
(0.121077 0.21 0.1) //p95
|
||||
(0.116747 0.2125 0.1) //p96
|
||||
|
||||
(0.225 0.1875 0.1) //97
|
||||
(0.225 0.27 0.1) //98
|
||||
(0.225 0.275 0.1) //99
|
||||
(0.225 0.1875 0.1) //100
|
||||
(0.225 0.27 0.1) //101
|
||||
(0.225 0.275 0.1) //102
|
||||
|
||||
(0.257476 0.16875 0.1) //103
|
||||
(0.328923 0.21 0.1) //104
|
||||
(0.333253 0.2125 0.1) //105
|
||||
(0.257476 0.16875 0.1) //106
|
||||
(0.328923 0.21 0.1) //107
|
||||
(0.333253 0.2125 0.1) //108
|
||||
|
||||
(0.257476 0.13125 0.1) //109
|
||||
(0.328923 0.09 0.1) //110
|
||||
(0.333253 0.0875 0.1) //111
|
||||
(0.257476 0.13125 0.1) //112
|
||||
(0.328923 0.09 0.1) //113
|
||||
(0.333253 0.0875 0.1) //114
|
||||
|
||||
(0.225 0.1125 0.1) //115
|
||||
(0.225 0.03 0.1) //116
|
||||
(0.225 0.025 0.1) //117
|
||||
(0.225 0.1125 0.1) //118
|
||||
(0.225 0.03 0.1) //119
|
||||
(0.225 0.025 0.1) //120
|
||||
|
||||
(0.192524 0.13125 0.1) //p121
|
||||
(0.121077 0.09 0.1) //p122
|
||||
(0.116747 0.0875 0.1) //p123
|
||||
);
|
||||
|
||||
blocks
|
||||
(
|
||||
//domain
|
||||
hex (0 4 5 1 26 30 31 27) domain (5 5 1) simpleGrading (1 1 1) //b0
|
||||
hex (1 5 6 2 27 31 32 28) domain (5 5 1) simpleGrading (1 1 1) //b1
|
||||
hex (2 6 7 3 28 32 33 29) domain (5 5 1) simpleGrading (1 1 1) //b2
|
||||
|
||||
hex (4 9 10 5 30 35 36 31) domain (5 5 1) simpleGrading (1 1 1) //b3
|
||||
hex (6 11 12 7 32 37 38 33) domain (5 5 1) simpleGrading (1 1 1) //b4
|
||||
|
||||
hex (8 14 15 9 34 40 41 35) domain (5 10 1) simpleGrading (1 1 1) //b5
|
||||
hex (9 15 16 10 35 41 42 36) domain (5 5 1) simpleGrading (1 1 1) //b6
|
||||
hex (11 17 18 12 37 43 44 38) domain (5 5 1) simpleGrading (1 1 1) //b7
|
||||
hex (12 18 19 13 38 44 45 39) domain (5 10 1) simpleGrading (1 1 1) //b8
|
||||
|
||||
hex (14 20 21 15 40 46 47 41) domain (20 10 1) simpleGrading (1 1 1)//b9
|
||||
hex (15 21 22 16 41 47 48 42) domain (20 5 1) simpleGrading (1 1 1)//b10
|
||||
hex (16 22 23 17 42 48 49 43) domain (20 5 1) simpleGrading (1 1 1)//b11
|
||||
hex (17 23 24 18 43 49 50 44) domain (20 5 1) simpleGrading (1 1 1)//b12
|
||||
hex (18 24 25 19 44 50 51 45) domain (20 10 1) simpleGrading (1 1 1)//b13
|
||||
|
||||
//rotor
|
||||
hex (52 55 56 53 88 91 92 89) rotor (5 5 1) simpleGrading (1 1 1) //b14
|
||||
hex (58 61 62 59 94 97 98 95) rotor (5 5 1) simpleGrading (1 1 1) //b15
|
||||
hex (64 67 68 65 100 103 104 101) rotor (5 5 1) simpleGrading (1 1 1) //b16
|
||||
hex (70 73 74 71 106 109 110 107) rotor (5 5 1) simpleGrading (1 1 1) //b17
|
||||
hex (76 79 80 77 112 115 116 113) rotor (5 5 1) simpleGrading (1 1 1) //b18
|
||||
hex (82 85 86 83 118 121 122 119) rotor (5 5 1) simpleGrading (1 1 1) //b19
|
||||
|
||||
hex (53 56 57 54 89 92 93 90) rotor (5 1 1) simpleGrading (1 1 1) //b20
|
||||
hex (59 62 63 60 95 98 99 96) rotor (5 1 1) simpleGrading (1 1 1) //b21
|
||||
hex (65 68 69 66 101 104 105 102) rotor (5 1 1) simpleGrading (1 1 1) //b22
|
||||
hex (71 74 75 72 107 110 111 108) rotor (5 1 1) simpleGrading (1 1 1) //b23
|
||||
hex (77 80 81 78 113 116 117 114) rotor (5 1 1) simpleGrading (1 1 1) //b24
|
||||
hex (83 86 87 84 119 122 123 120) rotor (5 1 1) simpleGrading (1 1 1) //b25
|
||||
);
|
||||
|
||||
edges
|
||||
(
|
||||
///// outer AMI
|
||||
arc 10 5 (0.1625 0.041747 0)
|
||||
arc 5 6 (0.1 0.15 0)
|
||||
arc 6 11 (0.1625 0.258253 0)
|
||||
arc 11 17 (0.2875 0.258253 0)
|
||||
arc 17 16 (0.35 0.15 0)
|
||||
arc 16 10 (0.2875 0.041747 0)
|
||||
|
||||
arc 36 31 (0.1625 0.041747 0.1)
|
||||
arc 31 32 (0.1 0.15 0.1)
|
||||
arc 32 37 (0.1625 0.258253 0.1)
|
||||
arc 37 43 (0.2875 0.258253 0.1)
|
||||
arc 43 42 (0.35 0.15 0.1)
|
||||
arc 42 36 (0.2875 0.041747 0.1)
|
||||
|
||||
//inner AMI
|
||||
arc 84 87 (0.1625 0.041747 0)
|
||||
arc 54 57 (0.1 0.15 0)
|
||||
arc 60 63 (0.1625 0.258253 0)
|
||||
arc 66 69 (0.2875 0.258253 0)
|
||||
arc 72 75 (0.35 0.15 0)
|
||||
arc 78 81 (0.2875 0.041747 0)
|
||||
|
||||
arc 120 123 (0.1625 0.041747 0.1)
|
||||
arc 90 93 (0.1 0.15 0.1)
|
||||
arc 96 99 (0.1625 0.258253 0.1)
|
||||
arc 102 105 (0.2875 0.258253 0.1)
|
||||
arc 108 111 (0.35 0.15 0.1)
|
||||
arc 114 117 (0.2875 0.041747 0.1)
|
||||
|
||||
//outer rotor
|
||||
|
||||
arc 83 86 (0.165 0.046077 0)
|
||||
arc 53 56 (0.105 0.15 0)
|
||||
arc 59 62 (0.165 0.253923 0)
|
||||
arc 65 68 (0.285 0.253923 0)
|
||||
arc 71 74 (0.345 0.15 0)
|
||||
arc 77 80 (0.285 0.046077 0)
|
||||
|
||||
arc 119 122 (0.165 0.046077 0.1)
|
||||
arc 89 92 (0.105 0.15 0.1)
|
||||
arc 95 98 (0.165 0.253923 0.1)
|
||||
arc 101 104 (0.285 0.253923 0.1)
|
||||
arc 107 110 (0.345 0.15 0.1)
|
||||
arc 113 116 (0.285 0.046077 0.1)
|
||||
|
||||
//inner rotor
|
||||
|
||||
arc 82 85 (0.20625 0.117524 0)
|
||||
arc 52 55 (0.1875 0.15 0)
|
||||
arc 58 61 (0.20625 0.182476 0)
|
||||
arc 64 67 (0.24375 0.182476 0)
|
||||
arc 70 73 (0.2625 0.15 0)
|
||||
arc 76 79 (0.24375 0.117524 0)
|
||||
|
||||
arc 118 121 (0.20625 0.117524 0.1)
|
||||
arc 88 91 (0.1875 0.15 0.1)
|
||||
arc 94 97 (0.20625 0.182476 0.1)
|
||||
arc 100 103 (0.24375 0.182476 0.1)
|
||||
arc 106 109 (0.2625 0.15 0.1)
|
||||
arc 112 115 (0.24375 0.117524 0.1)
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
walls
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 4 30 26)
|
||||
(4 9 35 30)
|
||||
(9 8 34 35)
|
||||
(3 7 33 29)
|
||||
(7 12 38 33)
|
||||
(12 13 39 38)
|
||||
);
|
||||
}
|
||||
|
||||
floor
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(8 14 40 34)
|
||||
(14 20 46 40)
|
||||
);
|
||||
}
|
||||
|
||||
roof
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(13 19 45 39)
|
||||
(19 25 51 45)
|
||||
);
|
||||
}
|
||||
|
||||
inlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(0 1 27 26)
|
||||
(1 2 28 27)
|
||||
(2 3 29 28)
|
||||
);
|
||||
}
|
||||
|
||||
outlet
|
||||
{
|
||||
type patch;
|
||||
faces
|
||||
(
|
||||
(20 21 47 46)
|
||||
(21 22 48 47)
|
||||
(22 23 49 48)
|
||||
(23 24 50 49)
|
||||
(24 25 51 50)
|
||||
);
|
||||
}
|
||||
|
||||
AMI1a
|
||||
{
|
||||
type cyclicAMI;
|
||||
matchTolerance 0.0001;
|
||||
transform noOrdering;
|
||||
neighbourPatch AMI1b;
|
||||
faces
|
||||
(
|
||||
(10 5 31 36)
|
||||
(5 6 32 31)
|
||||
(6 11 37 32)
|
||||
(11 17 43 37)
|
||||
(17 16 42 43)
|
||||
(16 10 36 42)
|
||||
);
|
||||
}
|
||||
|
||||
AMI1b
|
||||
{
|
||||
type cyclicAMI;
|
||||
matchTolerance 0.0001;
|
||||
transform noOrdering;
|
||||
neighbourPatch AMI1a;
|
||||
faces
|
||||
(
|
||||
|
||||
(84 87 123 120)
|
||||
(54 57 93 90)
|
||||
(60 63 99 96)
|
||||
(66 69 105 102)
|
||||
(72 75 111 108)
|
||||
(78 81 117 114)
|
||||
);
|
||||
}
|
||||
|
||||
rotor
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(82 83 119 118)
|
||||
(83 84 120 119)
|
||||
(79 80 116 115)
|
||||
(80 81 117 116)
|
||||
|
||||
(85 86 122 121)
|
||||
(86 87 123 122)
|
||||
(52 53 89 88)
|
||||
(53 54 90 89)
|
||||
|
||||
(55 56 92 91)
|
||||
(56 57 93 92)
|
||||
(58 59 95 94)
|
||||
(59 60 96 95)
|
||||
|
||||
(61 62 98 97)
|
||||
(62 63 99 98)
|
||||
(64 65 101 100)
|
||||
(65 66 102 101)
|
||||
|
||||
(67 68 104 103)
|
||||
(68 69 105 104)
|
||||
(70 71 107 106)
|
||||
(71 72 108 107)
|
||||
|
||||
(76 77 113 112)
|
||||
(77 78 114 113)
|
||||
(73 74 110 109)
|
||||
(74 75 111 110)
|
||||
|
||||
(82 85 121 118)
|
||||
(52 55 91 88)
|
||||
(58 61 97 94)
|
||||
(64 67 103 100)
|
||||
(70 73 109 106)
|
||||
(76 79 115 112)
|
||||
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,53 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
DebugSwitches
|
||||
{
|
||||
particle 0;
|
||||
}
|
||||
|
||||
application uncoupledKinematicParcelDyMFoam;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 2;
|
||||
|
||||
deltaT 1e-3;
|
||||
|
||||
writeControl runTime;
|
||||
|
||||
writeInterval 0.01;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat binary;
|
||||
|
||||
writePrecision 6;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable yes;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default none;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: v2006 |
|
||||
| \\ / A nd | Website: www.openfoam.com |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
Reference in New Issue
Block a user