Test case for tracers on stationary field.
This commit is contained in:
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/U
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/U
Normal file
File diff suppressed because it is too large
Load Diff
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/URec
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/URec
Normal file
File diff suppressed because it is too large
Load Diff
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/Us
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/Us
Normal file
File diff suppressed because it is too large
Load Diff
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/UsRec
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/UsRec
Normal file
File diff suppressed because it is too large
Load Diff
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/voidfraction
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/voidfraction
Normal file
File diff suppressed because it is too large
Load Diff
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/voidfractionRec
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/0/voidfractionRec
Normal file
File diff suppressed because it is too large
Load Diff
12
tutorials/rcfdemSolverBase/HopperTracer/CFD/clearParRec.sh
Executable file
12
tutorials/rcfdemSolverBase/HopperTracer/CFD/clearParRec.sh
Executable file
@ -0,0 +1,12 @@
|
||||
#!/bin/sh
|
||||
# Source run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
echo "Clearing processor directories without removing decomposed database."
|
||||
|
||||
for proc in processor*
|
||||
do
|
||||
echo "Clearing $proc directory."
|
||||
rm -rf $proc/0.*
|
||||
rm -rf $proc/[1-9]*
|
||||
done
|
||||
165
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/couplingProperties
Executable file
165
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/couplingProperties
Executable file
@ -0,0 +1,165 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.4 |
|
||||
| \\ / A nd | Web: http://www.openfoam.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object couplingProperties;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
//===========================================================================//
|
||||
// sub-models & settings
|
||||
|
||||
modelType "A"; // A or B
|
||||
|
||||
couplingInterval 1;
|
||||
|
||||
voidFractionModel centre;
|
||||
|
||||
locateModel engine;//turboEngineM2M;//
|
||||
|
||||
meshMotionModel noMeshMotion;
|
||||
|
||||
regionModel allRegion;
|
||||
|
||||
IOModel "off";
|
||||
|
||||
dataExchangeModel twoWayMPI;
|
||||
|
||||
averagingModel dense;
|
||||
|
||||
clockModel standardClock;
|
||||
|
||||
smoothingModel off;//constDiffSmoothing;
|
||||
|
||||
probeModel off;
|
||||
|
||||
forceModels
|
||||
(
|
||||
freeStreaming
|
||||
);
|
||||
|
||||
|
||||
energyModels
|
||||
(
|
||||
heatTransferGunn
|
||||
);
|
||||
|
||||
chemistryModel off;
|
||||
|
||||
thermCondModel SyamlalThermCond;
|
||||
|
||||
momCoupleModels
|
||||
(
|
||||
deactivateCouple
|
||||
);
|
||||
|
||||
|
||||
turbulenceModelType "turbulenceProperties";
|
||||
|
||||
//===========================================================================//
|
||||
// sub-model properties
|
||||
|
||||
implicitCoupleProps
|
||||
{
|
||||
velFieldName "U";
|
||||
granVelFieldName "Us";
|
||||
voidfractionFieldName "voidfraction";
|
||||
}
|
||||
|
||||
freeStreamingProps
|
||||
{
|
||||
critVoidfraction 0.98;
|
||||
// density can be chosen arbitrarily
|
||||
particleDensity 2500;
|
||||
//particleDensity 10000;
|
||||
ballisticVelLimit 1.0;
|
||||
}
|
||||
|
||||
|
||||
totalMomentumExchangeProps
|
||||
{
|
||||
implicitMomExFieldName "Ksl";
|
||||
explicitMomExFieldName "none";
|
||||
fluidVelFieldName "U";
|
||||
granVelFieldName "Us";
|
||||
densityFieldName "rho";
|
||||
}
|
||||
|
||||
|
||||
heatTransferGunnProps
|
||||
{
|
||||
partTempName "Temp";
|
||||
partHeatFluxName "convectiveHeatFlux";
|
||||
calcPartTempField false;
|
||||
partRefTemp 293;
|
||||
verbose false;
|
||||
}
|
||||
|
||||
SyamlalThermCondProps
|
||||
{
|
||||
}
|
||||
|
||||
constDiffSmoothingProps
|
||||
{
|
||||
lowerLimit 0.3;
|
||||
upperLimit 1.0;
|
||||
smoothingLength 3.0e-3;
|
||||
}
|
||||
|
||||
centreProps
|
||||
{
|
||||
alphaMin 0.10;
|
||||
}
|
||||
|
||||
engineProps
|
||||
{
|
||||
treeSearch true;
|
||||
}
|
||||
|
||||
turboEngineM2MProps
|
||||
{
|
||||
turboEngineProps
|
||||
{
|
||||
treeSearch true;
|
||||
}
|
||||
}
|
||||
|
||||
dividedProps
|
||||
{
|
||||
alphaMin 0.08;
|
||||
scaleUpVol 1.0;
|
||||
weight 1.0;
|
||||
verbose;
|
||||
}
|
||||
|
||||
|
||||
|
||||
twoWayMPIProps
|
||||
{
|
||||
maxNumberOfParticles 50000;
|
||||
liggghtsPath "../DEM/in.liggghts_rec";
|
||||
}
|
||||
|
||||
|
||||
particleProbeProps
|
||||
{
|
||||
particleIDsToSample "0";
|
||||
}
|
||||
// ************************************************************************* //
|
||||
22
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/g
Executable file
22
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/g
Executable file
@ -0,0 +1,22 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.6 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class uniformDimensionedVectorField;
|
||||
location "constant";
|
||||
object g;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
dimensions [0 1 -2 0 0 0 0];
|
||||
value ( 0 0 -9.81 );
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
42
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/liggghtsCommands
Executable file
42
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/liggghtsCommands
Executable file
@ -0,0 +1,42 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.4 |
|
||||
| \\ / A nd | Web: http://www.openfoam.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object liggghtsCommands;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
liggghtsCommandModels
|
||||
(
|
||||
runLiggghts
|
||||
writeLiggghts
|
||||
);
|
||||
// ************************************************************************* //
|
||||
|
||||
/*runLiggghtsProps
|
||||
{
|
||||
preNo false;
|
||||
}
|
||||
|
||||
writeLiggghtsProps
|
||||
{
|
||||
writeLast off;
|
||||
overwrite off;
|
||||
}*/
|
||||
@ -0,0 +1,86 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object blockMeshDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
convertToMeters 0.001;
|
||||
|
||||
vertices
|
||||
(
|
||||
(12 12 0)
|
||||
(75 12 0)
|
||||
(75 12 600)
|
||||
(12 12 600)
|
||||
(-12 12 600)
|
||||
(-75 12 600)
|
||||
(-75 12 0)
|
||||
(-12 12 0)
|
||||
(12 -12 0)
|
||||
(75 -12 0)
|
||||
(75 -12 600)
|
||||
(12 -12 600)
|
||||
(-12 -12 600)
|
||||
(-75 -12 600)
|
||||
(-75 -12 0)
|
||||
(-12 -12 0)
|
||||
);
|
||||
|
||||
// coarse mesh
|
||||
/*
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 8 9 10 11) (3 25 1) simpleGrading (1 1 1)
|
||||
hex (0 3 4 7 8 11 12 15) (25 1 1) simpleGrading (1 1 1)
|
||||
hex (7 4 5 6 15 12 13 14) (25 3 1) simpleGrading (1 1 1)
|
||||
);
|
||||
*/
|
||||
// fine mesh
|
||||
blocks
|
||||
(
|
||||
hex (0 1 2 3 8 9 10 11) (9 75 3) simpleGrading (1 1 1)
|
||||
hex (0 3 4 7 8 11 12 15) (75 3 3) simpleGrading (1 1 1)
|
||||
hex (7 4 5 6 15 12 13 14) (75 9 3) simpleGrading (1 1 1)
|
||||
);
|
||||
|
||||
boundary
|
||||
(
|
||||
walls
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 8 9 1)
|
||||
(1 9 10 2)
|
||||
(14 6 5 13)
|
||||
(15 7 6 14)
|
||||
);
|
||||
}
|
||||
|
||||
frontAndBack
|
||||
{
|
||||
type wall;
|
||||
faces
|
||||
(
|
||||
(0 1 2 3)
|
||||
(0 3 4 7)
|
||||
(6 7 4 5)
|
||||
(8 9 10 11)
|
||||
(8 11 12 15)
|
||||
(15 12 13 14)
|
||||
);
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 4.x |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class polyBoundaryMesh;
|
||||
location "constant/polyMesh";
|
||||
object boundary;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
3
|
||||
(
|
||||
walls
|
||||
{
|
||||
type wall;
|
||||
inGroups 1(wall);
|
||||
nFaces 504;
|
||||
startFace 12312;
|
||||
}
|
||||
frontAndBack
|
||||
{
|
||||
type wall;
|
||||
inGroups 1(wall);
|
||||
nFaces 3150;
|
||||
startFace 12816;
|
||||
}
|
||||
defaultFaces
|
||||
{
|
||||
type empty;
|
||||
inGroups 1(empty);
|
||||
nFaces 72;
|
||||
startFace 15966;
|
||||
}
|
||||
)
|
||||
|
||||
// ************************************************************************* //
|
||||
16062
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/faces
Normal file
16062
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/faces
Normal file
File diff suppressed because it is too large
Load Diff
12337
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/neighbour
Normal file
12337
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/neighbour
Normal file
File diff suppressed because it is too large
Load Diff
16063
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/owner
Normal file
16063
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/owner
Normal file
File diff suppressed because it is too large
Load Diff
6712
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/points
Normal file
6712
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/polyMesh/points
Normal file
File diff suppressed because it is too large
Load Diff
82
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/recProperties
Executable file
82
tutorials/rcfdemSolverBase/HopperTracer/CFD/constant/recProperties
Executable file
@ -0,0 +1,82 @@
|
||||
/*---------------------------------------------------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 1.4 |
|
||||
| \\ / A nd | Web: http://www.openfoam.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
|
||||
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
|
||||
root "";
|
||||
case "";
|
||||
instance "";
|
||||
local "";
|
||||
|
||||
class dictionary;
|
||||
object recProperties;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
//===========================================================================//
|
||||
// sub-models & settings
|
||||
|
||||
|
||||
recModel standardRecModel;
|
||||
|
||||
recNorm sqrDiffNorm;
|
||||
|
||||
recPath simpleRandomPath;
|
||||
|
||||
volScalarFields
|
||||
(
|
||||
voidfractionMean
|
||||
);
|
||||
|
||||
volVectorFields
|
||||
(
|
||||
UsMean
|
||||
);
|
||||
|
||||
surfaceScalarFields
|
||||
(
|
||||
// phi
|
||||
);
|
||||
|
||||
//verbose;
|
||||
|
||||
couplingSubStep 3;
|
||||
|
||||
|
||||
//===========================================================================//
|
||||
// sub-model properties
|
||||
|
||||
standardRecModelProps
|
||||
{
|
||||
velRecFieldName "U";
|
||||
voidfractionRecFieldName "voidfraction";
|
||||
granVelRecFieldName "Us";
|
||||
phiRecFieldName "phi";
|
||||
granPhiRecFieldName "phiS";
|
||||
readPhi false;
|
||||
readPhiS false;
|
||||
|
||||
}
|
||||
|
||||
sqrDiffNormProps
|
||||
{
|
||||
fieldType "volScalarField";
|
||||
fieldName "voidfraction";
|
||||
}
|
||||
|
||||
simpleRandomPathProps
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,49 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object thermophysicalProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
thermoType
|
||||
{
|
||||
type hePsiThermo;
|
||||
mixture pureMixture;
|
||||
transport const;
|
||||
thermo eConst;
|
||||
equationOfState perfectGas;
|
||||
specie specie;
|
||||
energy sensibleInternalEnergy;
|
||||
}
|
||||
|
||||
mixture
|
||||
{
|
||||
specie
|
||||
{
|
||||
nMoles 1;
|
||||
molWeight 28.9;
|
||||
}
|
||||
thermodynamics
|
||||
{
|
||||
Cv 718;
|
||||
Hf 0;
|
||||
}
|
||||
transport
|
||||
{
|
||||
mu 2e-05;
|
||||
Pr 0.8;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,35 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object transportProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
transportModel Newtonian;
|
||||
|
||||
nu nu [ 0 2 -1 0 0 0 0 ] 1.6e-05;
|
||||
|
||||
kf kf [ 1 1 -3 -1 0 0 0 ] 0.026;
|
||||
|
||||
Cp Cp [ 0 2 -2 -1 0 0 0 ] 1005;
|
||||
|
||||
// room T values
|
||||
|
||||
//nu nu [ 0 2 -1 0 0 0 0 ] 1.7e-05;
|
||||
|
||||
//kf kf [ 1 1 -3 -1 0 0 0 ] 0.024;
|
||||
|
||||
//Cp Cp [ 0 2 -2 -1 0 0 0 ] 1010;
|
||||
|
||||
//DT DT [ 0 2 -1 0 0 0 0 ] 1.9994e-05; // lambda/(rho*Cp) = 0.024/(1.1885*1010)
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,21 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "constant";
|
||||
object turbulenceProperties;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
simulationType laminar;
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/dataBase/0/UsMean
Normal file
4770
tutorials/rcfdemSolverBase/HopperTracer/CFD/dataBase/0/UsMean
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
35
tutorials/rcfdemSolverBase/HopperTracer/CFD/decomposeParRec.sh
Executable file
35
tutorials/rcfdemSolverBase/HopperTracer/CFD/decomposeParRec.sh
Executable file
@ -0,0 +1,35 @@
|
||||
#!/bin/sh
|
||||
# Source run functions
|
||||
. $WM_PROJECT_DIR/bin/tools/RunFunctions
|
||||
|
||||
if [ $# -eq 0 ]
|
||||
then
|
||||
dBname="dataBase"
|
||||
else
|
||||
dBname=$1
|
||||
fi
|
||||
|
||||
rm log.decomposePar
|
||||
|
||||
runApplication decomposePar -force
|
||||
|
||||
cpdirs="system constant"
|
||||
for f in $cpdirs
|
||||
do
|
||||
cp -r $f $dBname/$f
|
||||
done
|
||||
cd $dBname
|
||||
rm log.decomposePar
|
||||
runApplication decomposePar -force -time 0:
|
||||
|
||||
|
||||
rm -rf $cpdirs
|
||||
rm -rf processor*/constant
|
||||
|
||||
for proc in processor*
|
||||
do
|
||||
echo "Transferring decomposed recurrence fields of $dBname/$proc to $proc."
|
||||
mkdir ../$proc/$dBname
|
||||
mv $proc/* ../$proc/$dBname/
|
||||
rm -rf $proc
|
||||
done
|
||||
@ -0,0 +1,94 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object controlDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
application pisoFoam;
|
||||
|
||||
startFrom startTime;
|
||||
|
||||
startTime 0;
|
||||
|
||||
stopAt endTime;
|
||||
|
||||
endTime 10.0;
|
||||
|
||||
deltaT 0.00025;
|
||||
|
||||
writeControl timeStep;
|
||||
|
||||
writeInterval 400000;
|
||||
|
||||
purgeWrite 0;
|
||||
|
||||
writeFormat ascii;
|
||||
|
||||
writePrecision 6;
|
||||
|
||||
writeCompression off;
|
||||
|
||||
timeFormat general;
|
||||
|
||||
timePrecision 6;
|
||||
|
||||
runTimeModifiable true;
|
||||
|
||||
libs (
|
||||
|
||||
);
|
||||
|
||||
functions
|
||||
{
|
||||
|
||||
fieldOutput
|
||||
{
|
||||
type writeObjects;
|
||||
functionObjectLibs ( "libutilityFunctionObjects.so" );
|
||||
exclusiveWriting true;
|
||||
objects ("Us" "UsRec" "voidfraction" "voidfractionRec");
|
||||
writeControl timeStep;
|
||||
writeInterval 400;
|
||||
}
|
||||
|
||||
|
||||
|
||||
probes1
|
||||
{
|
||||
type probes;
|
||||
|
||||
functionObjectLibs ("libsampling.so");
|
||||
|
||||
#include "probesDict";
|
||||
}
|
||||
|
||||
/* temperatureSum
|
||||
{
|
||||
type patchExpression;
|
||||
writeControl timeStep;
|
||||
writeInterval 40;
|
||||
accumulations (
|
||||
sum
|
||||
);
|
||||
patches (
|
||||
outlet
|
||||
);
|
||||
expression "phi*T";
|
||||
verbose false;
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
|
||||
// ************************************************************************* //
|
||||
87
tutorials/rcfdemSolverBase/HopperTracer/CFD/system/decomposeParDict
Executable file
87
tutorials/rcfdemSolverBase/HopperTracer/CFD/system/decomposeParDict
Executable file
@ -0,0 +1,87 @@
|
||||
/*-------------------------------*- C++ -*---------------------------------*\
|
||||
| ========= |
|
||||
| \\ / OpenFOAM |
|
||||
| \\ / |
|
||||
| \\ / The Open Source CFD Toolbox |
|
||||
| \\/ http://www.OpenFOAM.org |
|
||||
\*-------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
note "mesh decomposition control dictionary";
|
||||
location "system";
|
||||
object decomposeParDict;
|
||||
}
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
numberOfSubdomains 2;
|
||||
|
||||
//- Keep owner and neighbour on same processor for faces in zones:
|
||||
// preserveFaceZones (heater solid1 solid3);
|
||||
|
||||
//method scotch;
|
||||
// method hierarchical;
|
||||
method simple;
|
||||
// method metis;
|
||||
// method manual;
|
||||
|
||||
simpleCoeffs
|
||||
{
|
||||
n (1 1 2);
|
||||
// n (2 1 4);
|
||||
delta 0.001;
|
||||
}
|
||||
|
||||
hierarchicalCoeffs
|
||||
{
|
||||
n (2 2 1);
|
||||
delta 0.001;
|
||||
order xyz;
|
||||
}
|
||||
|
||||
metisCoeffs
|
||||
{
|
||||
/*
|
||||
processorWeights
|
||||
(
|
||||
1
|
||||
1
|
||||
1
|
||||
1
|
||||
);
|
||||
*/
|
||||
}
|
||||
|
||||
scotchCoeffs
|
||||
{
|
||||
//processorWeights
|
||||
//(
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
// 1
|
||||
//);
|
||||
//writeGraph true;
|
||||
//strategy "b";
|
||||
}
|
||||
|
||||
manualCoeffs
|
||||
{
|
||||
dataFile "decompositionData";
|
||||
}
|
||||
|
||||
|
||||
//// Is the case distributed
|
||||
//distributed yes;
|
||||
//// Per slave (so nProcs-1 entries) the directory above the case.
|
||||
//roots
|
||||
//(
|
||||
// "/tmp"
|
||||
// "/tmp"
|
||||
//);
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
65
tutorials/rcfdemSolverBase/HopperTracer/CFD/system/fvSchemes
Normal file
65
tutorials/rcfdemSolverBase/HopperTracer/CFD/system/fvSchemes
Normal file
@ -0,0 +1,65 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSchemes;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
ddtSchemes
|
||||
{
|
||||
default Euler;
|
||||
}
|
||||
|
||||
gradSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
}
|
||||
|
||||
divSchemes
|
||||
{
|
||||
default Gauss linear;
|
||||
div(phi,U) Gauss limitedLinearV 1;
|
||||
div(phi,k) Gauss limitedLinear 1;
|
||||
div(phi,epsilon) Gauss limitedLinear 1;
|
||||
div(phi,R) Gauss limitedLinear 1;
|
||||
div(R) Gauss linear;
|
||||
div(phi,nuTilda) Gauss limitedLinear 1;
|
||||
div((nuEff*dev(T(grad(U))))) Gauss linear;
|
||||
div(phi,T) Gauss limitedLinear 1;
|
||||
// div(phi,T) Gauss upwind;
|
||||
}
|
||||
|
||||
laplacianSchemes
|
||||
{
|
||||
default Gauss linear corrected;
|
||||
}
|
||||
|
||||
interpolationSchemes
|
||||
{
|
||||
default linear;
|
||||
}
|
||||
|
||||
snGradSchemes
|
||||
{
|
||||
default corrected;
|
||||
}
|
||||
|
||||
fluxRequired
|
||||
{
|
||||
default no;
|
||||
p ;
|
||||
T ;
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,79 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \\ / O peration | Version: 2.3.0 |
|
||||
| \\ / A nd | Web: www.OpenFOAM.org |
|
||||
| \\/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
location "system";
|
||||
object fvSolution;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
solvers
|
||||
{
|
||||
"(p|rho)"
|
||||
{
|
||||
solver PCG;
|
||||
preconditioner DIC;
|
||||
tolerance 1e-6;
|
||||
relTol 0.01;
|
||||
}
|
||||
|
||||
"(p|rho)Final"
|
||||
{
|
||||
$p;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
"(U|k|e|epsilon|R|nuTilda|sSmoothField|vSmoothField)"
|
||||
{
|
||||
solver smoothSolver;
|
||||
smoother GaussSeidel;
|
||||
tolerance 1e-05;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
"(U|e|k|nuTilda)Final"
|
||||
{
|
||||
$U;
|
||||
relTol 0;
|
||||
}
|
||||
|
||||
T
|
||||
{
|
||||
solver PBiCG;
|
||||
preconditioner DILU;
|
||||
tolerance 1e-8;
|
||||
relTol 0;
|
||||
}
|
||||
}
|
||||
|
||||
PIMPLE
|
||||
{
|
||||
momentumPredictor yes;
|
||||
nOuterCorrectors 3;
|
||||
nCorrectors 1;
|
||||
nNonOrthogonalCorrectors 0;
|
||||
rhoMin rhoMin [ 1 -3 0 0 0 ] 0.5;
|
||||
rhoMax rhoMax [ 1 -3 0 0 0 ] 2.0;
|
||||
}
|
||||
|
||||
relaxationFactors
|
||||
{
|
||||
fields
|
||||
{
|
||||
}
|
||||
equations
|
||||
{
|
||||
".*" 1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// ************************************************************************* //
|
||||
@ -0,0 +1,43 @@
|
||||
/*--------------------------------*- C++ -*----------------------------------*\
|
||||
| ========= | |
|
||||
| \ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||
| \ / O peration | Version: 2.1.x |
|
||||
| \ / A nd | Web: www.OpenFOAM.org |
|
||||
| \/ M anipulation | |
|
||||
\*---------------------------------------------------------------------------*/
|
||||
FoamFile
|
||||
{
|
||||
version 2.0;
|
||||
format ascii;
|
||||
class dictionary;
|
||||
object probesDict;
|
||||
}
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
|
||||
fields
|
||||
(
|
||||
voidfraction
|
||||
Us
|
||||
);
|
||||
|
||||
writeControl timeStep;
|
||||
writeInterval 20;
|
||||
|
||||
|
||||
// Locations to be probed.
|
||||
probeLocations
|
||||
(
|
||||
(0.0 0.0 0.05)
|
||||
(0.0 0.0 0.1)
|
||||
(0.0 0.0 0.15)
|
||||
(0.05 0.0 0.05)
|
||||
(0.05 0.0 0.1)
|
||||
(0.05 0.0 0.15)
|
||||
(-0.05 0.0 0.05)
|
||||
(-0.05 0.0 0.1)
|
||||
(-0.05 0.0 0.15)
|
||||
);
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
137
tutorials/rcfdemSolverBase/HopperTracer/DEM/in.liggghts_init
Executable file
137
tutorials/rcfdemSolverBase/HopperTracer/DEM/in.liggghts_init
Executable file
@ -0,0 +1,137 @@
|
||||
# Pour granular particles into chute container, then induce flow
|
||||
|
||||
###############################################
|
||||
# variables
|
||||
|
||||
# material parameters
|
||||
|
||||
variable partDens equal 2500
|
||||
variable partRad equal 0.001
|
||||
|
||||
|
||||
# particle-particle properties
|
||||
variable knPP equal 7000
|
||||
variable ktPP equal 2248.9
|
||||
variable gnPP equal 2005.2
|
||||
variable gtPP equal 20854
|
||||
variable muPP equal 0.1
|
||||
variable rfPP equal 0.125
|
||||
|
||||
|
||||
# particle-wall properties
|
||||
# wall 1 = sapphire glass
|
||||
# wall 2 = aluminium
|
||||
variable knPW equal v_knPP
|
||||
variable ktPW equal v_ktPP
|
||||
variable gnPW equal v_gnPP/sqrt(2.0)
|
||||
variable gtPW equal v_gtPP/sqrt(2.0)
|
||||
variable muPW1 equal 0.3
|
||||
variable muPW2 equal 0.3
|
||||
variable rfPW1 equal 0.125
|
||||
variable rfPW2 equal 0.125
|
||||
|
||||
variable A equal 0.15*0.024
|
||||
variable h equal 0.3
|
||||
variable Vp equal 4*3.1415/3*${partRad}*${partRad}*${partRad}
|
||||
variable Ntot equal ${A}*${h}*0.65/${Vp}
|
||||
variable Nrate equal ${Ntot}/10
|
||||
|
||||
|
||||
variable dt equal 0.0000025
|
||||
variable skin equal 0.001
|
||||
|
||||
# particle settling loop parameters
|
||||
variable vthre equal 0.0005
|
||||
###############################################
|
||||
|
||||
atom_style granular
|
||||
atom_modify map array
|
||||
communicate single vel yes
|
||||
|
||||
boundary f f f
|
||||
newton off
|
||||
units si
|
||||
processors 1 1 4
|
||||
|
||||
region reg block -0.075 0.075 -0.012 0.012 0.0 0.6 units box
|
||||
create_box 3 reg
|
||||
|
||||
neighbor ${skin} bin
|
||||
neigh_modify delay 0 exclude type 1 1
|
||||
|
||||
#Material properties required for new pair styles
|
||||
|
||||
fix m1 all property/global kn peratomtypepair 3 ${knPP} ${knPW} ${knPW} ${knPW} 0 0 ${knPW} 0 0
|
||||
fix m2 all property/global kt peratomtypepair 3 ${ktPP} ${ktPW} ${ktPW} ${ktPW} 0 0 ${ktPW} 0 0
|
||||
fix m3 all property/global gamman peratomtypepair 3 ${gnPP} ${gnPW} ${gnPW} ${gnPW} 0 0 ${gnPW} 0 0
|
||||
fix m4 all property/global gammat peratomtypepair 3 ${gtPP} ${gtPW} ${gtPW} ${gtPW} 0 0 ${gtPW} 0 0
|
||||
fix m5 all property/global coefficientFriction peratomtypepair 3 ${muPP} ${muPW1} ${muPW2} ${muPW1} 0 0 ${muPW2} 0 0
|
||||
fix m6 all property/global coefficientRollingFriction peratomtypepair 3 ${rfPP} ${rfPW1} ${rfPW2} ${rfPW1} 0 0 ${rfPW2} 0 0
|
||||
|
||||
#pair style
|
||||
pair_style gran model hooke/stiffness tangential history rolling_friction cdt
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
timestep ${dt}
|
||||
fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
fix container all mesh/surface file stl_files/mesh.stl type 2
|
||||
|
||||
fix granwalls all wall/gran model hooke/stiffness tangential history mesh n_meshes 1 meshes container
|
||||
fix plug all wall/gran model hooke/stiffness tangential history rolling_friction cdt primitive type 2 zplane 0.0
|
||||
|
||||
|
||||
fix pts1 all particletemplate/sphere 1 atom_type 1 density constant ${partDens} radius constant ${partRad}
|
||||
fix pdd1 all particledistribution/discrete 1.0 1 pts1 1.0
|
||||
|
||||
region insReg block -0.075 0.075 -0.012 0.012 0.0 0.5 units box
|
||||
|
||||
fix ins_pack_dense all insert/pack/dense seed 123 region insReg distributiontemplate pdd1 volumefraction_region 0.53
|
||||
|
||||
|
||||
|
||||
fix loadBalancing all balance 10000 z 10 1.05
|
||||
|
||||
fix integr all nve/sphere
|
||||
|
||||
#screen output
|
||||
compute 1 all erotate/sphere
|
||||
thermo_style custom step atoms ke c_1 vol
|
||||
thermo 1000
|
||||
thermo_modify lost ignore norm no
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump dmp all custom/vtk 40000 post/dump*.filling.vtk id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
|
||||
|
||||
run 200000
|
||||
|
||||
write_restart liggghts.restart_predel
|
||||
|
||||
region delReg block -0.075 0.075 -0.012 0.012 ${h} 0.6 units box
|
||||
|
||||
run 1 every 1 "delete_atoms region delReg"
|
||||
|
||||
#======================================================================
|
||||
#- settling
|
||||
|
||||
variable vcmx equal vcm(all,x)
|
||||
variable vcmy equal vcm(all,y)
|
||||
variable vcmz equal vcm(all,z)
|
||||
|
||||
variable vave equal sqrt(v_vcmx*v_vcmx+v_vcmy*v_vcmy+v_vcmz*v_vcmz)
|
||||
print ${vave}
|
||||
|
||||
label loop
|
||||
print "-----> Checking Velocity..."
|
||||
if "${vave}<${vthre}" then "jump in.liggghts_init endloop"
|
||||
print "-----> v ave ${vave}, v threshold ${vthre}, continuing run"
|
||||
|
||||
run 20000
|
||||
jump in.liggghts_init loop
|
||||
|
||||
label endloop
|
||||
#======================================================================
|
||||
|
||||
|
||||
write_restart liggghts.restart
|
||||
93
tutorials/rcfdemSolverBase/HopperTracer/DEM/in.liggghts_rec
Executable file
93
tutorials/rcfdemSolverBase/HopperTracer/DEM/in.liggghts_rec
Executable file
@ -0,0 +1,93 @@
|
||||
###############################################
|
||||
# variables
|
||||
|
||||
# material parameters
|
||||
|
||||
variable partDens equal 2500
|
||||
|
||||
# particle-particle properties
|
||||
variable knPP equal 0
|
||||
variable ktPP equal 0
|
||||
variable gnPP equal 0
|
||||
variable gtPP equal 0
|
||||
variable muPP equal 0
|
||||
variable rfPP equal 0
|
||||
|
||||
|
||||
# particle-wall properties
|
||||
# wall 1 = sapphire glass
|
||||
# wall 2 = aluminium
|
||||
variable knPW equal v_knPP
|
||||
variable ktPW equal v_ktPP
|
||||
variable gnPW equal v_gnPP/sqrt(2.0)
|
||||
variable gtPW equal v_gtPP/sqrt(2.0)
|
||||
variable muPW1 equal 0
|
||||
variable muPW2 equal 0
|
||||
variable rfPW1 equal 0
|
||||
variable rfPW2 equal 0
|
||||
|
||||
variable Tpart equal 363
|
||||
|
||||
#variable dt equal 0.00025
|
||||
variable dt equal 0.00025
|
||||
variable skin equal 0.0005
|
||||
###############################################
|
||||
|
||||
atom_style granular
|
||||
atom_modify map array
|
||||
communicate single vel yes
|
||||
|
||||
boundary f f f
|
||||
newton off
|
||||
units si
|
||||
processors 1 1 2
|
||||
|
||||
read_restart ../DEM/liggghts.restart
|
||||
|
||||
|
||||
#liggghts.restart
|
||||
reset_timestep 0
|
||||
|
||||
neighbor ${skin} bin
|
||||
neigh_modify delay 0 exclude type 1 1
|
||||
|
||||
#Material properties required for new pair styles
|
||||
|
||||
fix m1 all property/global kn peratomtypepair 3 ${knPP} ${knPW} ${knPW} ${knPW} 0 0 ${knPW} 0 0
|
||||
fix m2 all property/global kt peratomtypepair 3 ${ktPP} ${ktPW} ${ktPW} ${ktPW} 0 0 ${ktPW} 0 0
|
||||
fix m3 all property/global gamman peratomtypepair 3 ${gnPP} ${gnPW} ${gnPW} ${gnPW} 0 0 ${gnPW} 0 0
|
||||
fix m4 all property/global gammat peratomtypepair 3 ${gtPP} ${gtPW} ${gtPW} ${gtPW} 0 0 ${gtPW} 0 0
|
||||
fix m5 all property/global coefficientFriction peratomtypepair 3 ${muPP} ${muPW1} ${muPW2} ${muPW1} 0 0 ${muPW2} 0 0
|
||||
fix m6 all property/global coefficientRollingFriction peratomtypepair 3 ${rfPP} ${rfPW1} ${rfPW2} ${rfPW1} 0 0 ${rfPW2} 0 0
|
||||
|
||||
#pair style
|
||||
pair_style gran model hooke/stiffness tangential history rolling_friction cdt
|
||||
pair_coeff * *
|
||||
|
||||
#timestep, gravity
|
||||
timestep ${dt}
|
||||
#fix gravi all gravity 9.81 vector 0.0 0.0 -1.0
|
||||
|
||||
fix container all mesh/surface file stl_files/mesh.stl type 2
|
||||
|
||||
fix granwalls all wall/gran model hooke/stiffness tangential history mesh n_meshes 1 meshes container
|
||||
|
||||
|
||||
#cfd coupling, needs to come before integration fix to allow for fluctuations
|
||||
fix cfd all couple/cfd couple_every 1 mpi
|
||||
fix cfd2 all couple/cfd/recurrence transfer_force yes transfer_fluctuations no
|
||||
|
||||
|
||||
# allow freely floating particles to fall back into the bed: needs integration
|
||||
fix integr all nve
|
||||
#fix integr all nve/sphere
|
||||
#fix integr all nve/noforce
|
||||
|
||||
#screen output
|
||||
thermo_style custom step atoms ke
|
||||
thermo 100
|
||||
thermo_modify lost ignore norm no
|
||||
compute_modify thermo_temp dynamic yes
|
||||
|
||||
dump dmp all custom/vtk 400 ../DEM/post/recdump*.liggghts_coupled.vtk id type radius x y z vx vy vz fx fy fz f_dragforce[1] f_dragforce[2] f_dragforce[3]
|
||||
run 1
|
||||
5688
tutorials/rcfdemSolverBase/HopperTracer/DEM/stl_files/mesh.stl
Normal file
5688
tutorials/rcfdemSolverBase/HopperTracer/DEM/stl_files/mesh.stl
Normal file
File diff suppressed because it is too large
Load Diff
28
tutorials/rcfdemSolverBase/HopperTracer/getInitialFillingState.sh
Executable file
28
tutorials/rcfdemSolverBase/HopperTracer/getInitialFillingState.sh
Executable file
@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
|
||||
#===================================================================#
|
||||
# DEMrun script for HopperTracer testcase
|
||||
#===================================================================#
|
||||
|
||||
#- source CFDEM env vars
|
||||
. ~/.bashrc
|
||||
|
||||
#- include functions
|
||||
source $CFDEM_PROJECT_DIR/etc/functions.sh
|
||||
|
||||
echo "starting DEM run in parallel..."
|
||||
#--------------------------------------------------------------------------------#
|
||||
#- define variables
|
||||
casePath="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")"
|
||||
logpath="$casePath"
|
||||
headerText="run_liggghts_init_DEM"
|
||||
logfileName="log_$headerText"
|
||||
solverName="in.liggghts_init"
|
||||
nrProcs=4
|
||||
machineFileName="none"
|
||||
debugMode="off"
|
||||
#--------------------------------------------------------------------------------#
|
||||
|
||||
#- call function to run DEM case
|
||||
parDEMrun $logpath $logfileName $casePath $headerText $solverName $nrProcs $machineFileName $debugMode
|
||||
|
||||
2
tutorials/rcfdemSolverBase/HopperTracer/runTracers.sh
Executable file
2
tutorials/rcfdemSolverBase/HopperTracer/runTracers.sh
Executable file
@ -0,0 +1,2 @@
|
||||
cd CFD
|
||||
mpirun -np 2 rcfdemSolverBase -parallel > ../log_runTracers 2>&1
|
||||
2
tutorials/rcfdemSolverBase/HopperTracer/setupCFDcase.sh
Executable file
2
tutorials/rcfdemSolverBase/HopperTracer/setupCFDcase.sh
Executable file
@ -0,0 +1,2 @@
|
||||
cd CFD
|
||||
/bin/bash decomposeParRec.sh
|
||||
Reference in New Issue
Block a user