mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
Implamented Rasmus' corrections to the particle force.
This commit is contained in:
@ -24,12 +24,18 @@
|
|||||||
|
|
||||||
if (g0.value() > 0.0)
|
if (g0.value() > 0.0)
|
||||||
{
|
{
|
||||||
surfaceScalarField alphaf = fvc::interpolate(alpha);
|
ppMagf = rUaAf*fvc::interpolate
|
||||||
|
(
|
||||||
|
(1.0/(rhoa*(alpha + scalar(0.0001))))
|
||||||
|
*g0*min(exp(preAlphaExp*(alpha - alphaMax)), expMax)
|
||||||
|
);
|
||||||
|
|
||||||
// Correct the particle-particle force magnitude
|
alphaEqn -= fvm::laplacian
|
||||||
ppMagf = g0*rUaAf*min(exp(preAlphaExp*(alphaf - alphaMax)), expMax);
|
(
|
||||||
|
(fvc::interpolate(alpha) + scalar(0.0001))*ppMagf,
|
||||||
alphaEqn -= fvm::laplacian(ppMagf, alpha);
|
alpha,
|
||||||
|
"laplacian(alphaPpMag,alpha)"
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
alphaEqn.relax();
|
alphaEqn.relax();
|
||||||
|
|||||||
@ -1,59 +1,49 @@
|
|||||||
/*--------------------------------*- C++ -*----------------------------------*\
|
/*--------------------------------*- C++ -*----------------------------------*\
|
||||||
| ========= | |
|
| ========= | |
|
||||||
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
|
||||||
| \\ / O peration | Version: 1.4.1 |
|
| \\ / O peration | Version: dev |
|
||||||
| \\ / A nd | Web: http://www.openfoam.org |
|
| \\ / A nd | Web: http://www.openfoam.org |
|
||||||
| \\/ M anipulation | |
|
| \\/ M anipulation | |
|
||||||
\*---------------------------------------------------------------------------*/
|
\*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
FoamFile
|
FoamFile
|
||||||
{
|
{
|
||||||
version 2.0;
|
version 2.0;
|
||||||
format binary;
|
format binary;
|
||||||
|
class polyBoundaryMesh;
|
||||||
root "/home/dm2/henry/OpenFOAM/OpenFOAM-1.4.1/tutorials/twoPhaseEulerFoam";
|
object boundary;
|
||||||
case "bed";
|
location "constant/polyMesh";
|
||||||
instance "constant";
|
|
||||||
local "polyMesh";
|
|
||||||
|
|
||||||
class polyBoundaryMesh;
|
|
||||||
object boundary;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
4
|
4
|
||||||
(
|
(
|
||||||
top
|
top
|
||||||
{
|
{
|
||||||
type patch;
|
type patch;
|
||||||
physicalType inletOutlet;
|
physicalType inletOutlet;
|
||||||
nFaces 25;
|
nFaces 25;
|
||||||
startFace 6100;
|
startFace 6100;
|
||||||
}
|
}
|
||||||
|
bottom
|
||||||
bottom
|
{
|
||||||
{
|
type patch;
|
||||||
type patch;
|
physicalType inlet;
|
||||||
physicalType inlet;
|
nFaces 25;
|
||||||
nFaces 25;
|
startFace 6125;
|
||||||
startFace 6125;
|
}
|
||||||
}
|
walls
|
||||||
|
{
|
||||||
walls
|
type wall;
|
||||||
{
|
physicalType wallFunctions;
|
||||||
type wall;
|
nFaces 250;
|
||||||
physicalType wallFunctions;
|
startFace 6150;
|
||||||
nFaces 250;
|
}
|
||||||
startFace 6150;
|
frontBack
|
||||||
}
|
{
|
||||||
|
type empty;
|
||||||
frontBack
|
nFaces 6250;
|
||||||
{
|
startFace 6400;
|
||||||
type empty;
|
}
|
||||||
nFaces 6250;
|
|
||||||
startFace 6400;
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// ************************************************************************* //
|
// ************************************************************************* //
|
||||||
|
|||||||
@ -30,7 +30,7 @@ expMax 1.0e+3;
|
|||||||
|
|
||||||
alphaMax 0.6;
|
alphaMax 0.6;
|
||||||
|
|
||||||
g0 g0 [ 0 2 -2 0 0 0 0 ] 1000 ;
|
g0 g0 [1 -1 -2 0 0 0 0 ] 1000 ;
|
||||||
|
|
||||||
packingLimiter no;
|
packingLimiter no;
|
||||||
|
|
||||||
|
|||||||
@ -52,7 +52,7 @@ laplacianSchemes
|
|||||||
laplacian(nuEffa,Ua) Gauss linear corrected;
|
laplacian(nuEffa,Ua) Gauss linear corrected;
|
||||||
laplacian(nuEffb,Ub) Gauss linear corrected;
|
laplacian(nuEffb,Ub) Gauss linear corrected;
|
||||||
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
||||||
laplacian(ppMagf,alpha) Gauss linear corrected;
|
laplacian(alphaPpMag,alpha) Gauss linear corrected;
|
||||||
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
||||||
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -30,7 +30,7 @@ expMax 1.0e+3;
|
|||||||
|
|
||||||
alphaMax 0.62;
|
alphaMax 0.62;
|
||||||
|
|
||||||
g0 g0 [ 0 2 -2 0 0 0 0 ] 0 ;
|
g0 g0 [ 1 -1 -2 0 0 0 0 ] 0 ;
|
||||||
|
|
||||||
packingLimiter no;
|
packingLimiter no;
|
||||||
|
|
||||||
|
|||||||
@ -52,7 +52,7 @@ laplacianSchemes
|
|||||||
laplacian(nuEffa,Ua) Gauss linear corrected;
|
laplacian(nuEffa,Ua) Gauss linear corrected;
|
||||||
laplacian(nuEffb,Ub) Gauss linear corrected;
|
laplacian(nuEffb,Ub) Gauss linear corrected;
|
||||||
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
||||||
laplacian(ppMagf,alpha) Gauss linear corrected;
|
laplacian(alphaPpMag,alpha) Gauss linear corrected;
|
||||||
laplacian(Galphaf,alpha) Gauss linear corrected;
|
laplacian(Galphaf,alpha) Gauss linear corrected;
|
||||||
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
||||||
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
||||||
|
|||||||
@ -30,7 +30,7 @@ expMax 10.0;
|
|||||||
|
|
||||||
alphaMax 0.6;
|
alphaMax 0.6;
|
||||||
|
|
||||||
g0 g0 [ 0 2 -2 0 0 0 0 ] 0 ;
|
g0 g0 [ 1 -1 -2 0 0 0 0 ] 0 ;
|
||||||
|
|
||||||
packingLimiter off;
|
packingLimiter off;
|
||||||
|
|
||||||
|
|||||||
@ -52,7 +52,7 @@ laplacianSchemes
|
|||||||
laplacian(nuEffa,Ua) Gauss linear corrected;
|
laplacian(nuEffa,Ua) Gauss linear corrected;
|
||||||
laplacian(nuEffb,Ub) Gauss linear corrected;
|
laplacian(nuEffb,Ub) Gauss linear corrected;
|
||||||
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
laplacian((rho*(1|A(U))),p) Gauss linear corrected;
|
||||||
laplacian(ppMagf,alpha) Gauss linear corrected;
|
laplacian(alphaPpMag,alpha) Gauss linear corrected;
|
||||||
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
laplacian((alphak*nuEffb),k) Gauss linear corrected;
|
||||||
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
laplacian((alphaEps*nuEffb),epsilon) Gauss linear corrected;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user