mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: twoPhaseEulerFoam: Removed requirement that a model (most likely "none") had to be specified for all pairs
This commit is contained in:
@ -35,6 +35,8 @@ namespace Foam
|
|||||||
defineRunTimeSelectionTable(dragModel, dictionary);
|
defineRunTimeSelectionTable(dragModel, dictionary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::dragModel::dimK(1, -3, -1, 0, 0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -93,6 +93,12 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Coefficient dimensions
|
||||||
|
static const dimensionSet dimK;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
// Construct without residual constants
|
// Construct without residual constants
|
||||||
|
|||||||
@ -34,6 +34,8 @@ namespace Foam
|
|||||||
defineRunTimeSelectionTable(heatTransferModel, dictionary);
|
defineRunTimeSelectionTable(heatTransferModel, dictionary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::heatTransferModel::dimK(1, -1, -3, -1, 0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -80,6 +80,12 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Coefficient dimensions
|
||||||
|
static const dimensionSet dimK;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct froma dictionary and a phase pair
|
//- Construct froma dictionary and a phase pair
|
||||||
|
|||||||
@ -35,6 +35,8 @@ namespace Foam
|
|||||||
defineRunTimeSelectionTable(liftModel, dictionary);
|
defineRunTimeSelectionTable(liftModel, dictionary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::liftModel::dimF(1, -2, -2, 0, 0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -81,6 +81,12 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Force dimensions
|
||||||
|
static const dimensionSet dimF;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from a dictionary and a phase pair
|
//- Construct from a dictionary and a phase pair
|
||||||
|
|||||||
@ -34,6 +34,8 @@ namespace Foam
|
|||||||
defineRunTimeSelectionTable(turbulentDispersionModel, dictionary);
|
defineRunTimeSelectionTable(turbulentDispersionModel, dictionary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::turbulentDispersionModel::dimF(1, -2, -2, 0, 0);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -80,6 +80,11 @@ public:
|
|||||||
(dict, pair)
|
(dict, pair)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Force dimensions
|
||||||
|
static const dimensionSet dimF;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
|
|||||||
@ -34,6 +34,8 @@ namespace Foam
|
|||||||
defineRunTimeSelectionTable(virtualMassModel, dictionary);
|
defineRunTimeSelectionTable(virtualMassModel, dictionary);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::virtualMassModel::dimK(dimDensity);
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
|
|||||||
@ -83,6 +83,12 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Coefficient dimensions
|
||||||
|
static const dimensionSet dimK;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from a dictionary and a phase pair
|
//- Construct from a dictionary and a phase pair
|
||||||
|
|||||||
@ -26,6 +26,8 @@ License
|
|||||||
#include "wallLubricationModel.H"
|
#include "wallLubricationModel.H"
|
||||||
#include "phasePair.H"
|
#include "phasePair.H"
|
||||||
|
|
||||||
|
const Foam::dimensionSet Foam::wallLubricationModel::dimF(1, -2, -2, 0, 0);
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
|
|||||||
@ -84,6 +84,12 @@ public:
|
|||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
// Static data members
|
||||||
|
|
||||||
|
//- Coefficient dimensions
|
||||||
|
static const dimensionSet dimF;
|
||||||
|
|
||||||
|
|
||||||
// Constructors
|
// Constructors
|
||||||
|
|
||||||
//- Construct from components
|
//- Construct from components
|
||||||
|
|||||||
@ -66,30 +66,6 @@ Foam::BlendedInterfacialModel<modelType>::BlendedInterfacialModel
|
|||||||
pair_(pair),
|
pair_(pair),
|
||||||
pair1In2_(pair1In2),
|
pair1In2_(pair1In2),
|
||||||
pair2In1_(pair2In1),
|
pair2In1_(pair2In1),
|
||||||
model_
|
|
||||||
(
|
|
||||||
modelType::New
|
|
||||||
(
|
|
||||||
modelTable[pair_],
|
|
||||||
pair_
|
|
||||||
)
|
|
||||||
),
|
|
||||||
model1In2_
|
|
||||||
(
|
|
||||||
modelType::New
|
|
||||||
(
|
|
||||||
modelTable[pair1In2_],
|
|
||||||
pair1In2_
|
|
||||||
)
|
|
||||||
),
|
|
||||||
model2In1_
|
|
||||||
(
|
|
||||||
modelType::New
|
|
||||||
(
|
|
||||||
modelTable[pair2In1_],
|
|
||||||
pair2In1_
|
|
||||||
)
|
|
||||||
),
|
|
||||||
blending_
|
blending_
|
||||||
(
|
(
|
||||||
blendingMethod::New
|
blendingMethod::New
|
||||||
@ -105,7 +81,43 @@ Foam::BlendedInterfacialModel<modelType>::BlendedInterfacialModel
|
|||||||
dimless,
|
dimless,
|
||||||
blendingDict.lookup("residualAlpha")
|
blendingDict.lookup("residualAlpha")
|
||||||
)
|
)
|
||||||
{}
|
{
|
||||||
|
if (modelTable.found(pair_))
|
||||||
|
{
|
||||||
|
model_.set
|
||||||
|
(
|
||||||
|
modelType::New
|
||||||
|
(
|
||||||
|
modelTable[pair_],
|
||||||
|
pair_
|
||||||
|
).ptr()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (modelTable.found(pair1In2_))
|
||||||
|
{
|
||||||
|
model1In2_.set
|
||||||
|
(
|
||||||
|
modelType::New
|
||||||
|
(
|
||||||
|
modelTable[pair1In2_],
|
||||||
|
pair1In2_
|
||||||
|
).ptr()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (modelTable.found(pair2In1_))
|
||||||
|
{
|
||||||
|
model2In1_.set
|
||||||
|
(
|
||||||
|
modelType::New
|
||||||
|
(
|
||||||
|
modelTable[pair2In1_],
|
||||||
|
pair2In1_
|
||||||
|
).ptr()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
@ -121,21 +133,56 @@ template<class modelType>
|
|||||||
Foam::tmp<Foam::volScalarField>
|
Foam::tmp<Foam::volScalarField>
|
||||||
Foam::BlendedInterfacialModel<modelType>::K() const
|
Foam::BlendedInterfacialModel<modelType>::K() const
|
||||||
{
|
{
|
||||||
tmp<volScalarField> f1(blending_->f1());
|
tmp<volScalarField> f1, f2;
|
||||||
tmp<volScalarField> f2(blending_->f2());
|
|
||||||
|
|
||||||
tmp<volScalarField> c
|
if (model_.valid() || model1In2_.valid())
|
||||||
|
{
|
||||||
|
f1 = blending_->f1();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model_.valid() || model2In1_.valid())
|
||||||
|
{
|
||||||
|
f2 = blending_->f2();
|
||||||
|
}
|
||||||
|
|
||||||
|
tmp<volScalarField> x
|
||||||
(
|
(
|
||||||
model_->K()*(f1() - f2())
|
new volScalarField
|
||||||
+ model1In2_->K()*(1 - f1)
|
(
|
||||||
+ model2In1_->K()*f2
|
IOobject
|
||||||
|
(
|
||||||
|
modelType::typeName + "Coeff",
|
||||||
|
pair_.phase1().mesh().time().timeName(),
|
||||||
|
pair_.phase1().mesh()
|
||||||
|
),
|
||||||
|
pair_.phase1().mesh(),
|
||||||
|
dimensionedScalar("zero", modelType::dimK, 0)
|
||||||
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
c() *= max(pair_.phase1()*pair_.phase2(), residualAlpha_);
|
if (model_.valid())
|
||||||
|
{
|
||||||
|
x() += model_->K()*(f1() - f2());
|
||||||
|
}
|
||||||
|
|
||||||
correctFixedFluxBCs(c());
|
if (model1In2_.valid())
|
||||||
|
{
|
||||||
|
x() += model1In2_->K()*(1 - f1);
|
||||||
|
}
|
||||||
|
|
||||||
return c;
|
if (model2In1_.valid())
|
||||||
|
{
|
||||||
|
x() += model2In1_->K()*f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model_.valid() || model1In2_.valid() || model2In1_.valid())
|
||||||
|
{
|
||||||
|
x() *= max(pair_.phase1()*pair_.phase2(), residualAlpha_);
|
||||||
|
|
||||||
|
correctFixedFluxBCs(x());
|
||||||
|
}
|
||||||
|
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -144,19 +191,54 @@ template<class Type>
|
|||||||
Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> >
|
Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> >
|
||||||
Foam::BlendedInterfacialModel<modelType>::F() const
|
Foam::BlendedInterfacialModel<modelType>::F() const
|
||||||
{
|
{
|
||||||
tmp<volScalarField> f1(blending_->f1());
|
tmp<volScalarField> f1, f2;
|
||||||
tmp<volScalarField> f2(blending_->f2());
|
|
||||||
|
|
||||||
tmp<GeometricField<Type, fvPatchField, volMesh> > v
|
if (model_.valid() || model1In2_.valid())
|
||||||
|
{
|
||||||
|
f1 = blending_->f1();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model_.valid() || model2In1_.valid())
|
||||||
|
{
|
||||||
|
f2 = blending_->f2();
|
||||||
|
}
|
||||||
|
|
||||||
|
tmp<GeometricField<Type, fvPatchField, volMesh> > x
|
||||||
(
|
(
|
||||||
model_->F()*(f1() - f2())
|
new GeometricField<Type, fvPatchField, volMesh>
|
||||||
+ model1In2_->F()*(1 - f1)
|
(
|
||||||
- model2In1_->F()*f2
|
IOobject
|
||||||
|
(
|
||||||
|
modelType::typeName + "Coeff",
|
||||||
|
pair_.phase1().mesh().time().timeName(),
|
||||||
|
pair_.phase1().mesh()
|
||||||
|
),
|
||||||
|
pair_.phase1().mesh(),
|
||||||
|
dimensioned<Type>("zero", modelType::dimF, pTraits<Type>::zero)
|
||||||
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
correctFixedFluxBCs(v());
|
if (model_.valid())
|
||||||
|
{
|
||||||
|
x() += model_->F()*(f1() - f2());
|
||||||
|
}
|
||||||
|
|
||||||
return v;
|
if (model1In2_.valid())
|
||||||
|
{
|
||||||
|
x() += model1In2_->F()*(1 - f1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model2In1_.valid())
|
||||||
|
{
|
||||||
|
x() -= model2In1_->F()*f2; // note : subtraction
|
||||||
|
}
|
||||||
|
|
||||||
|
if (model_.valid() || model1In2_.valid() || model2In1_.valid())
|
||||||
|
{
|
||||||
|
correctFixedFluxBCs(x());
|
||||||
|
}
|
||||||
|
|
||||||
|
return x;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ SourceFiles
|
|||||||
#include "phasePair.H"
|
#include "phasePair.H"
|
||||||
#include "orderedPhasePair.H"
|
#include "orderedPhasePair.H"
|
||||||
|
|
||||||
|
#include "geometricZeroField.H"
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||||
|
|
||||||
namespace Foam
|
namespace Foam
|
||||||
@ -50,6 +52,8 @@ namespace Foam
|
|||||||
template<class modelType>
|
template<class modelType>
|
||||||
class BlendedInterfacialModel
|
class BlendedInterfacialModel
|
||||||
{
|
{
|
||||||
|
private:
|
||||||
|
|
||||||
// Private data
|
// Private data
|
||||||
|
|
||||||
//- Unordered phase pair
|
//- Unordered phase pair
|
||||||
|
|||||||
@ -37,16 +37,20 @@ Foam::orderedPhasePair::orderedPhasePair
|
|||||||
const dictTable& aspectRatioTable
|
const dictTable& aspectRatioTable
|
||||||
)
|
)
|
||||||
:
|
:
|
||||||
phasePair(dispersed, continuous, g, sigmaTable, true),
|
phasePair(dispersed, continuous, g, sigmaTable, true)
|
||||||
aspectRatio_
|
{
|
||||||
(
|
if (aspectRatioTable.found(*this))
|
||||||
aspectRatioModel::New
|
{
|
||||||
|
aspectRatio_.set
|
||||||
(
|
(
|
||||||
aspectRatioTable[*this],
|
aspectRatioModel::New
|
||||||
*this
|
(
|
||||||
)
|
aspectRatioTable[*this],
|
||||||
)
|
*this
|
||||||
{}
|
).ptr()
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * //
|
||||||
@ -79,6 +83,13 @@ Foam::word Foam::orderedPhasePair::name() const
|
|||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::orderedPhasePair::E() const
|
Foam::tmp<Foam::volScalarField> Foam::orderedPhasePair::E() const
|
||||||
{
|
{
|
||||||
|
if (!aspectRatio_.valid())
|
||||||
|
{
|
||||||
|
FatalErrorIn("Foam::orderedPhasePair::E() const")
|
||||||
|
<< "Aspect ratio model not specified for " << *this << "."
|
||||||
|
<< exit(FatalError);
|
||||||
|
}
|
||||||
|
|
||||||
return aspectRatio_->E();
|
return aspectRatio_->E();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -185,7 +185,7 @@ Foam::tmp<Foam::volScalarField> Foam::phasePair::Ta() const
|
|||||||
|
|
||||||
Foam::tmp<Foam::volScalarField> Foam::phasePair::E() const
|
Foam::tmp<Foam::volScalarField> Foam::phasePair::E() const
|
||||||
{
|
{
|
||||||
FatalErrorIn("Foam::phasePair::dispersed() const")
|
FatalErrorIn("Foam::phasePair::E() const")
|
||||||
<< "Requested aspect ratio of the dispersed phase in an unordered pair"
|
<< "Requested aspect ratio of the dispersed phase in an unordered pair"
|
||||||
<< exit(FatalError);
|
<< exit(FatalError);
|
||||||
|
|
||||||
|
|||||||
@ -110,21 +110,18 @@ drag
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
|
Cvm 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -141,67 +138,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -110,21 +110,18 @@ drag
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
|
Cvm 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -141,67 +138,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -52,17 +52,6 @@ sigma
|
|||||||
|
|
||||||
aspectRatio
|
aspectRatio
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type constant;
|
|
||||||
E0 1.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type constant;
|
|
||||||
E0 1.0;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
drag
|
drag
|
||||||
@ -78,33 +67,14 @@ drag
|
|||||||
type none;
|
type none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(particles in air)
|
(particles in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -115,71 +85,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -110,21 +110,18 @@ drag
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
|
Cvm 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -141,67 +138,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -19,32 +19,11 @@ phases (air water);
|
|||||||
|
|
||||||
air
|
air
|
||||||
{
|
{
|
||||||
diameterModel IATE;
|
diameterModel isothermal;
|
||||||
|
isothermalCoeffs
|
||||||
IATECoeffs
|
|
||||||
{
|
{
|
||||||
dMax 1e-2;
|
d0 3e-3;
|
||||||
dMin 1e-4;
|
p0 1e5;
|
||||||
residualAlpha 1e-6;
|
|
||||||
|
|
||||||
sources
|
|
||||||
(
|
|
||||||
wakeEntrainmentCoalescence
|
|
||||||
{
|
|
||||||
Cwe 0.002;
|
|
||||||
}
|
|
||||||
randomCoalescence
|
|
||||||
{
|
|
||||||
Crc 0.04;
|
|
||||||
C 3;
|
|
||||||
alphaMax 0.75;
|
|
||||||
}
|
|
||||||
turbulentBreakUp
|
|
||||||
{
|
|
||||||
Cti 0.085;
|
|
||||||
WeCr 6;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -131,21 +110,18 @@ drag
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
|
Cvm 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -162,67 +138,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -52,17 +52,6 @@ sigma
|
|||||||
|
|
||||||
aspectRatio
|
aspectRatio
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type constant;
|
|
||||||
E0 1.0;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type constant;
|
|
||||||
E0 1.0;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
drag
|
drag
|
||||||
@ -78,33 +67,14 @@ drag
|
|||||||
type none;
|
type none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(particles in air)
|
(particles in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -115,71 +85,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(particles in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air in particles)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(particles and air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
@ -110,21 +110,18 @@ drag
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
lift
|
virtualMass
|
||||||
(
|
(
|
||||||
(air in water)
|
(air in water)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
|
Cvm 0.5;
|
||||||
}
|
}
|
||||||
|
|
||||||
(water in air)
|
(water in air)
|
||||||
{
|
{
|
||||||
type none;
|
type constantCoefficient;
|
||||||
}
|
Cvm 0.5;
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -141,67 +138,18 @@ heatTransfer
|
|||||||
type RanzMarshall;
|
type RanzMarshall;
|
||||||
residualRe 1e-3;
|
residualRe 1e-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
virtualMass
|
lift
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type constantCoefficient;
|
|
||||||
Cvm 0.5;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
wallLubrication
|
wallLubrication
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
turbulentDispersion
|
turbulentDispersion
|
||||||
(
|
(
|
||||||
(air in water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(water in air)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
|
|
||||||
(air and water)
|
|
||||||
{
|
|
||||||
type none;
|
|
||||||
}
|
|
||||||
);
|
);
|
||||||
|
|
||||||
// Minimum allowable pressure
|
// Minimum allowable pressure
|
||||||
|
|||||||
Reference in New Issue
Block a user