compressibleCavitation, incompressibleCavitation: Added usages documentation
This commit is contained in:
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -53,8 +53,8 @@ Foam::compressible::cavitationModels::Kunz::Kunz
|
||||
|
||||
UInf_("UInf", dimVelocity, dict),
|
||||
tInf_("tInf", dimTime, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", dimPressure, 0)
|
||||
{
|
||||
@ -64,21 +64,29 @@ Foam::compressible::cavitationModels::Kunz::Kunz
|
||||
|
||||
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::tmp<Foam::volScalarField::Internal>
|
||||
Foam::compressible::cavitationModels::Kunz::mvCoeff() const
|
||||
{
|
||||
return Cv_*rhov()/(0.5*rhol()*sqr(UInf_)*tInf_);
|
||||
}
|
||||
|
||||
|
||||
Foam::tmp<Foam::volScalarField::Internal>
|
||||
Foam::compressible::cavitationModels::Kunz::mcCoeff() const
|
||||
{
|
||||
return Cc_*rhov()/tInf_;
|
||||
}
|
||||
|
||||
|
||||
Foam::Pair<Foam::tmp<Foam::volScalarField::Internal>>
|
||||
Foam::compressible::cavitationModels::Kunz::mDotcvAlphal() const
|
||||
{
|
||||
const volScalarField::Internal& p =
|
||||
phases_.mesh().lookupObject<volScalarField>("p");
|
||||
|
||||
const volScalarField::Internal mcCoeff_(Cc_*rhov()/tInf_);
|
||||
const volScalarField::Internal mvCoeff_
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
Cv_*rhov()/(0.5*rhol()*sqr(UInf_)*tInf_)
|
||||
);
|
||||
|
||||
const volScalarField::Internal limitedAlphal
|
||||
(
|
||||
min(max(alphal(), scalar(0)), scalar(1))
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal pSatv(this->pSatv());
|
||||
@ -86,9 +94,9 @@ Foam::compressible::cavitationModels::Kunz::mDotcvAlphal() const
|
||||
|
||||
return Pair<tmp<volScalarField::Internal>>
|
||||
(
|
||||
mcCoeff_*sqr(limitedAlphal)
|
||||
mcCoeff()*sqr(alphal)
|
||||
*max(p - pSatv, p0_)/max(p - pSatv, 0.01*pSatv),
|
||||
-mvCoeff_*min(p - pSatl, p0_)
|
||||
- mvCoeff()*min(p - pSatl, p0_)
|
||||
);
|
||||
}
|
||||
|
||||
@ -99,15 +107,14 @@ Foam::compressible::cavitationModels::Kunz::mDotcvP() const
|
||||
const volScalarField::Internal& p =
|
||||
phases_.mesh().lookupObject<volScalarField>("p");
|
||||
|
||||
const volScalarField::Internal mcCoeff_(Cc_*rhov()/tInf_);
|
||||
const volScalarField::Internal mvCoeff_
|
||||
const volScalarField::Internal alphav
|
||||
(
|
||||
Cv_*rhov()/(0.5*rhol()*sqr(UInf_)*tInf_)
|
||||
min(max(this->alphav(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal limitedAlphal
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
min(max(alphal(), scalar(0)), scalar(1))
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal pSatv(this->pSatv());
|
||||
@ -115,9 +122,9 @@ Foam::compressible::cavitationModels::Kunz::mDotcvP() const
|
||||
|
||||
return Pair<tmp<volScalarField::Internal>>
|
||||
(
|
||||
mcCoeff_*sqr(limitedAlphal)*(1 - limitedAlphal)
|
||||
*pos0(p - pSatv)/max(p - pSatv, 0.01*pSatv),
|
||||
-mvCoeff_*limitedAlphal*neg(p - pSatl)
|
||||
mcCoeff()*alphav*sqr(alphal)*pos0(p - pSatv)
|
||||
/max(p - pSatv, 0.01*pSatv),
|
||||
- mvCoeff()*alphal*neg(p - pSatl)
|
||||
);
|
||||
}
|
||||
|
||||
@ -135,8 +142,8 @@ bool Foam::compressible::cavitationModels::Kunz::read
|
||||
{
|
||||
dict.lookup("UInf") >> UInf_;
|
||||
dict.lookup("tInf") >> tInf_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -25,11 +25,13 @@ Class
|
||||
Foam::compressible::cavitationModels::Kunz
|
||||
|
||||
Description
|
||||
Kunz cavitation model slightly modified so that the condensation term
|
||||
is switched off when the pressure is less than the saturation vapour
|
||||
pressure. This change allows the condensation term to be formulated as
|
||||
a coefficient multiplying (p - p_sat) so that it can be included as an
|
||||
implicit term in the pressure equation.
|
||||
Kunz cavitation model.
|
||||
|
||||
Slightly modified so that the condensation term is switched off when the
|
||||
pressure is less than the saturation vapour pressure. This change allows
|
||||
the condensation term to be formulated as a coefficient multiplying (p -
|
||||
p_sat) so that it can be included as an implicit term in the pressure
|
||||
equation.
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
@ -40,6 +42,31 @@ Description
|
||||
Computers & Fluids, 29(8), 849-875.
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
tInf | Vaporisation/condensation time scale | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model Kunz;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
UInf 20;
|
||||
tInf 0.005; // L = 0.1 m
|
||||
Cv 1000;
|
||||
Cc 1000;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
Kunz.C
|
||||
|
||||
@ -69,14 +96,29 @@ class Kunz
|
||||
{
|
||||
// Private Data
|
||||
|
||||
//- Free-stream velocity
|
||||
dimensionedScalar UInf_;
|
||||
|
||||
//- Vaporisation time scale
|
||||
dimensionedScalar tInf_;
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Zero with pressure dimensions
|
||||
dimensionedScalar p0_;
|
||||
|
||||
|
||||
// Private Member functions
|
||||
|
||||
tmp<volScalarField::Internal> mvCoeff() const;
|
||||
|
||||
tmp<volScalarField::Internal> mcCoeff() const;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
|
||||
@ -53,8 +53,8 @@ Foam::compressible::cavitationModels::Merkle::Merkle
|
||||
|
||||
UInf_("UInf", dimVelocity, dict),
|
||||
tInf_("tInf", dimTime, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", dimPressure, 0),
|
||||
|
||||
@ -66,20 +66,22 @@ Foam::compressible::cavitationModels::Merkle::Merkle
|
||||
|
||||
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
|
||||
|
||||
Foam::tmp<Foam::volScalarField::Internal>
|
||||
Foam::compressible::cavitationModels::Merkle::mvCoeff() const
|
||||
{
|
||||
return Cv_*rhol()/(0.5*sqr(UInf_)*tInf_*rhov());
|
||||
}
|
||||
|
||||
|
||||
Foam::Pair<Foam::tmp<Foam::volScalarField::Internal>>
|
||||
Foam::compressible::cavitationModels::Merkle::mDotcvAlphal() const
|
||||
{
|
||||
const volScalarField::Internal& p = thermol().p();
|
||||
|
||||
const volScalarField::Internal mvCoeff_
|
||||
(
|
||||
Cv_*rhol()/(0.5*sqr(UInf_)*tInf_*rhov())
|
||||
);
|
||||
|
||||
return Pair<tmp<volScalarField::Internal>>
|
||||
(
|
||||
mcCoeff_*max(p - pSatv(), p0_),
|
||||
-mvCoeff_*min(p - pSatl(), p0_)
|
||||
-mvCoeff()*min(p - pSatl(), p0_)
|
||||
);
|
||||
}
|
||||
|
||||
@ -89,20 +91,20 @@ Foam::compressible::cavitationModels::Merkle::mDotcvP() const
|
||||
{
|
||||
const volScalarField::Internal& p = thermol().p();
|
||||
|
||||
const volScalarField::Internal limitedAlphal
|
||||
const volScalarField::Internal alphav
|
||||
(
|
||||
min(max(alphal(), scalar(0)), scalar(1))
|
||||
min(max(this->alphav(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal mvCoeff_
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
Cv_*rhol()/(0.5*sqr(UInf_)*tInf_*rhov())
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
return Pair<tmp<volScalarField::Internal>>
|
||||
(
|
||||
mcCoeff_*(1 - limitedAlphal)*pos0(p - pSatv()),
|
||||
-mvCoeff_*limitedAlphal*neg(p - pSatl())
|
||||
mcCoeff_*alphav*pos0(p - pSatv()),
|
||||
-mvCoeff()*alphal*neg(p - pSatl())
|
||||
);
|
||||
}
|
||||
|
||||
@ -120,8 +122,8 @@ bool Foam::compressible::cavitationModels::Merkle::read
|
||||
{
|
||||
dict.lookup("UInf") >> UInf_;
|
||||
dict.lookup("tInf") >> tInf_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -35,6 +35,31 @@ Description
|
||||
(Vol. 2, pp. 307-311).
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
tInf | Vaporisation/condensation time scale | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model Merkle;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
UInf 20;
|
||||
tInf 0.005; // L = 0.1 m
|
||||
Cv 1e-3;
|
||||
Cc 80;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
Merkle.C
|
||||
|
||||
@ -64,16 +89,29 @@ class Merkle
|
||||
{
|
||||
// Private Data
|
||||
|
||||
//- Free-stream velocity
|
||||
dimensionedScalar UInf_;
|
||||
|
||||
//- Vaporisation/condensation time scale
|
||||
dimensionedScalar tInf_;
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Zero with pressure dimensions
|
||||
dimensionedScalar p0_;
|
||||
|
||||
dimensionedScalar mcCoeff_;
|
||||
|
||||
|
||||
// Private Member functions
|
||||
|
||||
tmp<volScalarField::Internal> mvCoeff() const;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
//- Runtime type information
|
||||
|
||||
@ -70,7 +70,7 @@ Foam::compressible::cavitationModels::Saito::Saito
|
||||
|
||||
// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //
|
||||
|
||||
inline Foam::tmp<Foam::volScalarField::Internal>
|
||||
Foam::tmp<Foam::volScalarField::Internal>
|
||||
Foam::compressible::cavitationModels::Saito::fT(const rhoThermo& thermo) const
|
||||
{
|
||||
return sqrt(2*pi*(RR/thermo.W()()())*thermo.T()());
|
||||
@ -82,16 +82,16 @@ Foam::compressible::cavitationModels::Saito::mDotcvAlphal() const
|
||||
{
|
||||
const volScalarField::Internal& p = thermol().p();
|
||||
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphav
|
||||
(
|
||||
min(max(this->alphav(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphavNuc(max(alphav, alphaNuc_));
|
||||
|
||||
const volScalarField::Internal A(Ca_*alphal*alphavNuc);
|
||||
@ -112,16 +112,16 @@ Foam::compressible::cavitationModels::Saito::mDotcvP() const
|
||||
{
|
||||
const volScalarField::Internal& p = thermol().p();
|
||||
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphav
|
||||
(
|
||||
min(max(this->alphav(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphal
|
||||
(
|
||||
min(max(this->alphal(), scalar(0)), scalar(1))
|
||||
);
|
||||
|
||||
const volScalarField::Internal alphavNuc(max(alphav, alphaNuc_));
|
||||
|
||||
const volScalarField::Internal A(Ca_*alphal*alphavNuc);
|
||||
|
||||
@ -51,12 +51,12 @@ Usage:
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 79995;
|
||||
pSat 2300;
|
||||
|
||||
Ca 0.1; // Interfacial area concentration coefficient [1/m]
|
||||
Cc 1;
|
||||
Cv 1;
|
||||
alphaNuc 0.01;
|
||||
alphaNuc 0.001;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
@ -107,7 +107,7 @@ class Saito
|
||||
// Private Member functions
|
||||
|
||||
//- Return the function of temperature
|
||||
inline tmp<volScalarField::Internal> fT(const rhoThermo& thermo) const;
|
||||
tmp<volScalarField::Internal> fT(const rhoThermo& thermo) const;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -59,8 +59,8 @@ Foam::compressible::cavitationModels::SchnerrSauer::SchnerrSauer
|
||||
|
||||
n_("n", dimless/dimVolume, dict),
|
||||
dNuc_("dNuc", dimLength, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", dimPressure, 0.0)
|
||||
{
|
||||
@ -180,8 +180,8 @@ bool Foam::compressible::cavitationModels::SchnerrSauer::read
|
||||
{
|
||||
dict.lookup("n") >> n_;
|
||||
dict.lookup("dNuc") >> dNuc_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -35,6 +35,32 @@ Description
|
||||
New Orleans, LO, USA: ICMF New Orleans.
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
n | Bubble number density | yes |
|
||||
dNuc | Nucleation site diameter | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model SchnerrSauer;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
n 1.6e+13;
|
||||
dNuc 2e-6;
|
||||
Cv 1;
|
||||
Cc 1;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
SchnerrSauer.C
|
||||
|
||||
@ -70,12 +96,13 @@ class SchnerrSauer
|
||||
//- Nucleation site diameter
|
||||
dimensionedScalar dNuc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vapourisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Zero with pressure dimensions
|
||||
dimensionedScalar p0_;
|
||||
|
||||
|
||||
@ -90,7 +117,7 @@ class SchnerrSauer
|
||||
const volScalarField::Internal& limitedAlphal
|
||||
) const;
|
||||
|
||||
//- Part of the condensation and vapourisation rates
|
||||
//- Part of the condensation and vaporisation rates
|
||||
tmp<volScalarField::Internal> pCoeff
|
||||
(
|
||||
const volScalarField::Internal& p,
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -49,8 +49,8 @@ Foam::cavitationModels::Kunz::Kunz
|
||||
|
||||
UInf_("UInf", dimVelocity, dict),
|
||||
tInf_("tInf", dimTime, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", pSat().dimensions(), 0.0),
|
||||
|
||||
@ -113,8 +113,8 @@ bool Foam::cavitationModels::Kunz::read(const dictionary& dict)
|
||||
{
|
||||
dict.lookup("UInf") >> UInf_;
|
||||
dict.lookup("tInf") >> tInf_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
mcCoeff_ = Cc_*rhov()/tInf_;
|
||||
mvCoeff_ = Cv_*rhov()/(0.5*rhol()*sqr(UInf_)*tInf_);
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -25,20 +25,46 @@ Class
|
||||
Foam::cavitationModels::Kunz
|
||||
|
||||
Description
|
||||
Kunz cavitation model slightly modified so that the condensation term
|
||||
is switched off when the pressure is less than the saturation vapour
|
||||
pressure. This change allows the condensation term to be formulated as
|
||||
a coefficient multiplying (p - p_sat) so that it can be included as an
|
||||
implicit term in the pressure equation.
|
||||
Kunz cavitation model.
|
||||
|
||||
Slightly modified so that the condensation term is switched off when the
|
||||
pressure is less than the saturation vapour pressure. This change allows
|
||||
the condensation term to be formulated as a coefficient multiplying (p -
|
||||
p_sat) so that it can be included as an implicit term in the pressure
|
||||
equation.
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
Kunz, R.F., Boger, D.A., Stinebring, D.R., Chyczewski, Lindau. J.W.,
|
||||
Gibeling, H.J., Venkateswaran, S., Govindan, T.R.,
|
||||
"A Preconditioned Implicit Method for Two-Phase Flows with Application
|
||||
to Cavitation Prediction,"
|
||||
Computers and Fluids,
|
||||
29(8):849-875, 2000.
|
||||
Kunz, R. F., Boger, D. A., Stinebring, D. R., Chyczewski,
|
||||
T. S., Lindau, J. W., Gibeling, H. J., ... & Govindan, T. (2000).
|
||||
A preconditioned Navier–Stokes method for two-phase flows
|
||||
with application to cavitation prediction.
|
||||
Computers & Fluids, 29(8), 849-875.
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
tInf | Vaporisation/condensation time scale | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model Kunz;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
UInf 20;
|
||||
tInf 0.005; // L = 0.1 m
|
||||
Cv 1000;
|
||||
Cc 1000;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
@ -68,14 +94,23 @@ class Kunz
|
||||
{
|
||||
// Private Data
|
||||
|
||||
//- Free-stream velocity
|
||||
dimensionedScalar UInf_;
|
||||
|
||||
//- Vaporisation time scale
|
||||
dimensionedScalar tInf_;
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Zero with pressure dimensions
|
||||
dimensionedScalar p0_;
|
||||
|
||||
dimensionedScalar mcCoeff_;
|
||||
|
||||
dimensionedScalar mvCoeff_;
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -49,8 +49,8 @@ Foam::cavitationModels::Merkle::Merkle
|
||||
|
||||
UInf_("UInf", dimVelocity, dict),
|
||||
tInf_("tInf", dimTime, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", pSat().dimensions(), 0.0),
|
||||
|
||||
@ -106,8 +106,8 @@ bool Foam::cavitationModels::Merkle::read(const dictionary& dict)
|
||||
{
|
||||
dict.lookup("UInf") >> UInf_;
|
||||
dict.lookup("tInf") >> tInf_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
mcCoeff_ = Cc_/(0.5*sqr(UInf_)*tInf_);
|
||||
mvCoeff_ = Cv_*rhol()/(0.5*sqr(UInf_)*tInf_*rhov());
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,12 +29,37 @@ Description
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
C. L. Merkle, J. Feng, and P. E. O. Buelow,
|
||||
"Computational modeling of the dynamics of sheet cavitation",
|
||||
in Proceedings Third International Symposium on Cavitation
|
||||
Grenoble, France 1998.
|
||||
Markle, C. L. (1998).
|
||||
Computational modeling of the dynamics of sheet cavitation.
|
||||
In Proc. 3rd International Symposium on Cavitation
|
||||
(Vol. 2, pp. 307-311).
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
tInf | Vaporisation/condensation time scale | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model Merkle;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
UInf 20;
|
||||
tInf 0.005; // L = 0.1 m
|
||||
Cv 1e-3;
|
||||
Cc 80;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
Merkle.C
|
||||
|
||||
@ -62,14 +87,23 @@ class Merkle
|
||||
{
|
||||
// Private Data
|
||||
|
||||
//- Free-stream velocity
|
||||
dimensionedScalar UInf_;
|
||||
|
||||
//- Vaporisation/condensation time scale
|
||||
dimensionedScalar tInf_;
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Zero with pressure dimensions
|
||||
dimensionedScalar p0_;
|
||||
|
||||
dimensionedScalar mcCoeff_;
|
||||
|
||||
dimensionedScalar mvCoeff_;
|
||||
|
||||
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -56,8 +56,8 @@ Foam::cavitationModels::SchnerrSauer::SchnerrSauer
|
||||
|
||||
n_("n", dimless/dimVolume, dict),
|
||||
dNuc_("dNuc", dimLength, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
Cv_("Cv", dimless, dict),
|
||||
Cc_("Cc", dimless, dict),
|
||||
|
||||
p0_("0", pSat().dimensions(), 0.0)
|
||||
{
|
||||
@ -167,8 +167,8 @@ bool Foam::cavitationModels::SchnerrSauer::read(const dictionary& dict)
|
||||
{
|
||||
dict.lookup("n") >> n_;
|
||||
dict.lookup("dNuc") >> dNuc_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
dict.lookup("Cv") >> Cv_;
|
||||
dict.lookup("Cc") >> Cc_;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
========= |
|
||||
\\ / F ield | OpenFOAM: The Open Source CFD Toolbox
|
||||
\\ / O peration | Website: https://openfoam.org
|
||||
\\ / A nd | Copyright (C) 2011-2022 OpenFOAM Foundation
|
||||
\\ / A nd | Copyright (C) 2011-2023 OpenFOAM Foundation
|
||||
\\/ M anipulation |
|
||||
-------------------------------------------------------------------------------
|
||||
License
|
||||
@ -29,10 +29,36 @@ Description
|
||||
|
||||
Reference:
|
||||
\verbatim
|
||||
Schnerr, G. H., And Sauer, J.,
|
||||
"Physical and Numerical Modeling of Unsteady Cavitation Dynamics",
|
||||
Proc. 4th International Conference on Multiphase Flow,
|
||||
New Orleans, U.S.A., 2001.
|
||||
Schnerr, G. H., & Sauer, J. (2001, May).
|
||||
Physical and numerical modeling of unsteady cavitation dynamics.
|
||||
In Fourth international conference on multiphase flow (Vol. 1).
|
||||
New Orleans, LO, USA: ICMF New Orleans.
|
||||
\endverbatim
|
||||
|
||||
Usage:
|
||||
\table
|
||||
Property | Description | Required | Default value
|
||||
liquid | Name of the liquid phase | yes |
|
||||
pSat | Saturation vapor pressure | yes |
|
||||
Uinf | Free-stream velocity | yes |
|
||||
n | Bubble number density | yes |
|
||||
dNuc | Nucleation site diameter | yes |
|
||||
Cv | Vapourisation rate coefficient | yes |
|
||||
Cc | Condensation rate coefficient | yes |
|
||||
\endtable
|
||||
|
||||
Example:
|
||||
\verbatim
|
||||
model SchnerrSauer;
|
||||
|
||||
liquid liquid;
|
||||
|
||||
pSat 2300;
|
||||
|
||||
n 1.6e+13;
|
||||
dNuc 2e-6;
|
||||
Cv 1;
|
||||
Cc 1;
|
||||
\endverbatim
|
||||
|
||||
SourceFiles
|
||||
@ -68,12 +94,12 @@ class SchnerrSauer
|
||||
//- Nucleation site diameter
|
||||
dimensionedScalar dNuc_;
|
||||
|
||||
//- Vaporisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
//- Condensation rate coefficient
|
||||
dimensionedScalar Cc_;
|
||||
|
||||
//- Vapourisation rate coefficient
|
||||
dimensionedScalar Cv_;
|
||||
|
||||
dimensionedScalar p0_;
|
||||
|
||||
//- Nucleation site volume-fraction
|
||||
@ -85,7 +111,7 @@ class SchnerrSauer
|
||||
const volScalarField::Internal& limitedAlphal
|
||||
) const;
|
||||
|
||||
//- Part of the condensation and vapourisation rates
|
||||
//- Part of the condensation and vaporisation rates
|
||||
tmp<volScalarField::Internal> pCoeff
|
||||
(
|
||||
const volScalarField::Internal& p
|
||||
|
||||
Reference in New Issue
Block a user