Commit e369cd1f authored by Henry's avatar Henry
Browse files

twoPhaseEulerFoam/interfacialModels/turbulentDispersionModels: Added Fprime function

to support improved discretisation in pEqn and implicit treatment in the phase-fraction equation
parent 7c35ea52
......@@ -25,7 +25,6 @@ License
#include "Burns.H"
#include "phasePair.H"
#include "fvc.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "addToRunTimeSelectionTable.H"
......@@ -70,8 +69,8 @@ Foam::turbulentDispersionModels::Burns::~Burns()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::volVectorField>
Foam::turbulentDispersionModels::Burns::F() const
Foam::tmp<Foam::volScalarField>
Foam::turbulentDispersionModels::Burns::Fprime() const
{
const fvMesh& mesh(pair_.phase1().mesh());
const dragModel&
......@@ -93,7 +92,6 @@ Foam::turbulentDispersionModels::Burns::F() const
*sqr(pair_.dispersed().d())
)
*pair_.continuous().rho()
*fvc::grad(pair_.continuous())
*(1.0 + pair_.dispersed()/max(pair_.continuous(), residualAlpha_));
}
......
......@@ -103,8 +103,9 @@ public:
// Member Functions
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const;
};
......
......@@ -25,7 +25,6 @@ License
#include "Gosman.H"
#include "phasePair.H"
#include "fvc.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "addToRunTimeSelectionTable.H"
......@@ -69,8 +68,8 @@ Foam::turbulentDispersionModels::Gosman::~Gosman()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::volVectorField>
Foam::turbulentDispersionModels::Gosman::F() const
Foam::tmp<Foam::volScalarField>
Foam::turbulentDispersionModels::Gosman::Fprime() const
{
const fvMesh& mesh(pair_.phase1().mesh());
const dragModel&
......@@ -92,8 +91,7 @@ Foam::turbulentDispersionModels::Gosman::F() const
sigma_
*sqr(pair_.dispersed().d())
)
*pair_.continuous().rho()
*fvc::grad(pair_.dispersed());
*pair_.continuous().rho();
}
......
......@@ -92,8 +92,9 @@ public:
// Member Functions
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const;
};
......
......@@ -25,7 +25,6 @@ License
#include "LopezDeBertodano.H"
#include "phasePair.H"
#include "fvc.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "addToRunTimeSelectionTable.H"
......@@ -67,14 +66,13 @@ Foam::turbulentDispersionModels::LopezDeBertodano::~LopezDeBertodano()
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::volVectorField>
Foam::turbulentDispersionModels::LopezDeBertodano::F() const
Foam::tmp<Foam::volScalarField>
Foam::turbulentDispersionModels::LopezDeBertodano::Fprime() const
{
return
Ctd_
*pair_.continuous().rho()
*pair_.continuous().turbulence().k()
*fvc::grad(pair_.dispersed());
*pair_.continuous().turbulence().k();
}
// ************************************************************************* //
......@@ -98,8 +98,9 @@ public:
// Member Functions
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const;
};
......
......@@ -25,7 +25,6 @@ License
#include "constantTurbulentDispersionCoefficient.H"
#include "phasePair.H"
#include "fvc.H"
#include "PhaseCompressibleTurbulenceModel.H"
#include "addToRunTimeSelectionTable.H"
......@@ -69,16 +68,15 @@ Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient::
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::volVectorField>
Foam::tmp<Foam::volScalarField>
Foam::turbulentDispersionModels::constantTurbulentDispersionCoefficient::
F() const
Fprime() const
{
return
Ctd_
*pair_.dispersed()
*pair_.continuous().rho()
*pair_.continuous().turbulence().k()
*fvc::grad(pair_.dispersed());
*pair_.continuous().turbulence().k();
}
......
......@@ -83,8 +83,9 @@ public:
// Member Functions
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const;
};
......
......@@ -93,4 +93,32 @@ Foam::turbulentDispersionModels::noTurbulentDispersion::F() const
}
Foam::tmp<Foam::volScalarField>
Foam::turbulentDispersionModels::noTurbulentDispersion::Fprime() const
{
const fvMesh& mesh(this->pair_.phase1().mesh());
return
tmp<volScalarField>
(
new volScalarField
(
IOobject
(
"zero",
mesh.time().timeName(),
mesh
),
mesh,
dimensionedScalar
(
"zero",
dimensionSet(1, -2, 1, 0, 0),
0
)
)
);
}
// ************************************************************************* //
......@@ -78,6 +78,10 @@ public:
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const;
};
......
......@@ -25,6 +25,7 @@ License
#include "turbulentDispersionModel.H"
#include "phasePair.H"
#include "fvcGrad.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
......@@ -55,4 +56,14 @@ Foam::turbulentDispersionModel::~turbulentDispersionModel()
{}
// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * //
Foam::tmp<Foam::volVectorField>
Foam::turbulentDispersionModel::F() const
{
return Fprime()*fvc::grad(pair_.dispersed());
}
// ************************************************************************* //
......@@ -82,7 +82,7 @@ public:
// Static data members
//- Force dimensions
//- Force dimensions
static const dimensionSet dimF;
......@@ -112,7 +112,11 @@ public:
// Member Functions
//- Turbulent dispersion force
virtual tmp<volVectorField> F() const = 0;
virtual tmp<volVectorField> F() const;
//- Turbulent dispersion force coefficient
// multiplying the gradient of the phase-fraction
virtual tmp<volScalarField> Fprime() const = 0;
};
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment