mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
reactingEulerFoam/interfacialModels/wallLubricationModels: Apply zero-gradient condition at walls
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -72,7 +72,8 @@ Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::Antal::Fi() const
|
||||
|
||||
const volVectorField& n(nWall());
|
||||
|
||||
return
|
||||
return zeroGradWalls
|
||||
(
|
||||
max
|
||||
(
|
||||
dimensionedScalar("zero", dimless/dimLength, 0),
|
||||
@ -80,7 +81,8 @@ Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::Antal::Fi() const
|
||||
)
|
||||
*pair_.continuous().rho()
|
||||
*magSqr(Ur - (Ur & n)*n)
|
||||
*n;
|
||||
*n
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -77,7 +77,8 @@ Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::Frank::Fi() const
|
||||
volScalarField Eo(pair_.Eo());
|
||||
volScalarField yTilde(y/(Cwc_*pair_.dispersed().d()));
|
||||
|
||||
return
|
||||
return zeroGradWalls
|
||||
(
|
||||
(
|
||||
pos(Eo - 1.0)*neg(Eo - 5.0)*exp(-0.933*Eo + 0.179)
|
||||
+ pos(Eo - 5.0)*neg(Eo - 33.0)*(0.00599*Eo - 0.0187)
|
||||
@ -90,7 +91,8 @@ Foam::tmp<Foam::volVectorField> Foam::wallLubricationModels::Frank::Fi() const
|
||||
)
|
||||
*pair_.continuous().rho()
|
||||
*magSqr(Ur - (Ur & n)*n)
|
||||
*n;
|
||||
*n
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -75,7 +75,8 @@ Foam::wallLubricationModels::TomiyamaWallLubrication::Fi() const
|
||||
|
||||
volScalarField Eo(pair_.Eo());
|
||||
|
||||
return
|
||||
return zeroGradWalls
|
||||
(
|
||||
(
|
||||
pos(Eo - 1.0)*neg(Eo - 5.0)*exp(-0.933*Eo + 0.179)
|
||||
+ pos(Eo - 5.0)*neg(Eo - 33.0)*(0.00599*Eo - 0.0187)
|
||||
@ -89,7 +90,8 @@ Foam::wallLubricationModels::TomiyamaWallLubrication::Fi() const
|
||||
)
|
||||
*pair_.continuous().rho()
|
||||
*magSqr(Ur - (Ur & n)*n)
|
||||
*n;
|
||||
*n
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -26,6 +26,7 @@ License
|
||||
#include "wallLubricationModel.H"
|
||||
#include "phasePair.H"
|
||||
#include "surfaceInterpolate.H"
|
||||
#include "wallFvPatch.H"
|
||||
|
||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||
|
||||
@ -38,6 +39,29 @@ namespace Foam
|
||||
const Foam::dimensionSet Foam::wallLubricationModel::dimF(1, -2, -2, 0, 0);
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
|
||||
Foam::tmp<Foam::volVectorField> Foam::wallLubricationModel::zeroGradWalls
|
||||
(
|
||||
tmp<volVectorField> tFi
|
||||
) const
|
||||
{
|
||||
volVectorField& Fi = tFi();
|
||||
const fvPatchList& patches = Fi.mesh().boundary();
|
||||
|
||||
forAll(patches, patchi)
|
||||
{
|
||||
if (isA<wallFvPatch>(patches[patchi]))
|
||||
{
|
||||
fvPatchVectorField& Fiw = Fi.boundaryField()[patchi];
|
||||
Fiw = Fiw.patchInternalField();
|
||||
}
|
||||
}
|
||||
|
||||
return tFi;
|
||||
}
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::wallLubricationModel::wallLubricationModel
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration |
|
||||
\\ / A nd | Copyright (C) 2014-2015 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2014-2016 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -63,6 +63,12 @@ protected:
|
||||
const phasePair& pair_;
|
||||
|
||||
|
||||
// Protected member functions
|
||||
|
||||
//- Zero-gradient wall-lubrication force at walls
|
||||
tmp<volVectorField> zeroGradWalls(tmp<volVectorField>) const;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
|
||||
Reference in New Issue
Block a user