updated to reflect changes in turbulence models

This commit is contained in:
andy
2008-06-20 15:13:10 +01:00
parent b0f29324b2
commit 6e07a1511f
6 changed files with 247 additions and 281 deletions

View File

@ -11,9 +11,9 @@ EXE_LIBS = \
$(FOAM_LIBBIN)/postCalc.o \
-lfiniteVolume \
-lincompressibleTransportModels \
-lincompressibleRASmodels \
-lincompressibleLESmodels \
-lincompressibleRASModels \
-lincompressibleLESModels \
-lbasicThermophysicalModels \
-lspecie \
-lcompressibleRASmodels \
-lcompressibleLESmodels
-lcompressibleRASModels \
-lcompressibleLESModels

View File

@ -39,12 +39,12 @@ Description
#include "incompressible/singlePhaseTransportModel/singlePhaseTransportModel.H"
#include "incompressible/RASmodel/RASmodel.H"
#include "incompressible/LESmodel/LESmodel.H"
#include "incompressible/RASModel/RASModel.H"
#include "incompressible/LESModel/LESModel.H"
#include "basicThermo.H"
#include "compressible/RASmodel/RASmodel.H"
#include "compressible/LESmodel/LESmodel.H"
#include "compressible/RASModel/RASModel.H"
#include "compressible/LESModel/LESModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -127,9 +127,9 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
if (phi.dimensions() == dimensionSet(0, 3, -1, 0, 0))
{
IOobject turbulencePropertiesHeader
IOobject RASPropertiesHeader
(
"turbulenceProperties",
"RASProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
@ -137,47 +137,45 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
false
);
if (turbulencePropertiesHeader.headerOk())
{
IOdictionary turbulenceProperties
IOobject LESPropertiesHeader
(
turbulencePropertiesHeader
"RASProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE,
false
);
singlePhaseTransportModel laminarTransport(U, phi);
if (turbulenceProperties.found("RASmodel"))
if (RASPropertiesHeader.headerOk())
{
autoPtr<incompressible::RASmodel> RASmodel
IOdictionary RASProperties(RASPropertiesHeader);
autoPtr<incompressible::RASModel> RASModel
(
incompressible::RASmodel::New
incompressible::RASModel::New
(
U,
phi,
laminarTransport
)
);
execFlowFunctionObjects(args, runTime);
}
else if (turbulenceProperties.found("LESmodel"))
else if (LESPropertiesHeader.headerOk())
{
autoPtr<incompressible::LESmodel> sgsModel
IOdictionary LESProperties(LESPropertiesHeader);
autoPtr<incompressible::LESModel> sgsModel
(
incompressible::LESmodel::New(U, phi, laminarTransport)
incompressible::LESModel::New(U, phi, laminarTransport)
);
execFlowFunctionObjects(args, runTime);
}
else
{
FatalErrorIn(args.executable())
<< "Cannot find turbulence model type in "
<< "RASmodel dictionary"
<< nl << exit(FatalError);
}
}
else
{
IOdictionary transportProperties
(
@ -191,20 +189,14 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
)
);
dimensionedScalar nu
(
transportProperties.lookup("nu")
);
dimensionedScalar nu(transportProperties.lookup("nu"));
execFlowFunctionObjects(args, runTime);
}
}
else if (phi.dimensions() == dimensionSet(1, 0, -1, 0, 0))
{
autoPtr<basicThermo> thermo
(
basicThermo::New(mesh)
);
autoPtr<basicThermo> thermo(basicThermo::New(mesh));
volScalarField rho
(
@ -217,9 +209,9 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
thermo->rho()
);
IOobject turbulencePropertiesHeader
IOobject RASPropertiesHeader
(
"turbulenceProperties",
"RASProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
@ -227,18 +219,23 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
false
);
if (turbulencePropertiesHeader.headerOk())
{
IOdictionary turbulenceProperties
IOobject LESPropertiesHeader
(
turbulencePropertiesHeader
"LESProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE,
false
);
if (turbulenceProperties.found("RASmodel"))
if (RASPropertiesHeader.headerOk())
{
autoPtr<compressible::RASmodel> RASmodel
IOdictionary RASProperties(RASPropertiesHeader);
autoPtr<compressible::RASModel> RASModel
(
compressible::RASmodel::New
compressible::RASModel::New
(
rho,
U,
@ -249,24 +246,18 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
execFlowFunctionObjects(args, runTime);
}
else if (turbulenceProperties.found("LESmodel"))
else if (LESPropertiesHeader.headerOk())
{
autoPtr<compressible::LESmodel> sgsModel
IOdictionary LESProperties(LESPropertiesHeader);
autoPtr<compressible::LESModel> sgsModel
(
compressible::LESmodel::New(rho, U, phi, thermo())
compressible::LESModel::New(rho, U, phi, thermo())
);
execFlowFunctionObjects(args, runTime);
}
else
{
FatalErrorIn(args.executable())
<< "Cannot find turbulence model type in "
<< "RASmodel dictionary"
<< nl << exit(FatalError);
}
}
else
{
IOdictionary transportProperties
(
@ -280,10 +271,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
)
);
dimensionedScalar mu
(
transportProperties.lookup("mu")
);
dimensionedScalar mu(transportProperties.lookup("mu"));
execFlowFunctionObjects(args, runTime);
}

View File

@ -14,9 +14,9 @@ EXE_LIBS = \
-lfiniteVolume \
-lmeshTools \
-lincompressibleTransportModels \
-lincompressibleRASmodels \
-lincompressibleLESmodels \
-lincompressibleRASModels \
-lincompressibleLESModels \
-lbasicThermophysicalModels \
-lspecie \
-lcompressibleRASmodels \
-lcompressibleLESmodels
-lcompressibleRASModels \
-lcompressibleLESModels

View File

@ -37,11 +37,11 @@ Description
#include "fvc.H"
#include "incompressible/singlePhaseTransportModel/singlePhaseTransportModel.H"
#include "incompressible/RASmodel/RASmodel.H"
#include "incompressible/LESmodel/LESmodel.H"
#include "incompressible/RASModel/RASModel.H"
#include "incompressible/LESModel/LESModel.H"
#include "basicThermo.H"
#include "compressible/RASmodel/RASmodel.H"
#include "compressible/LESmodel/LESmodel.H"
#include "compressible/RASModel/RASModel.H"
#include "compressible/LESModel/LESModel.H"
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@ -76,33 +76,37 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
mesh
);
Info<< " Calculating Pe" << endl;
if (phi.dimensions() == dimensionSet(0, 3, -1, 0, 0))
{
IOobject turbulencePropertiesHeader
IOobject RASPropertiesHeader
(
"turbulenceProperties",
"RASProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE
);
if (turbulencePropertiesHeader.headerOk())
{
IOdictionary turbulenceProperties
IOobject LESPropertiesHeader
(
turbulencePropertiesHeader
"LESProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE
);
Info<< " Calculating Pe" << endl;
if (phi.dimensions() == dimensionSet(0, 3, -1, 0, 0))
{
if (RASPropertiesHeader.headerOk())
{
IOdictionary RASProperties(RASPropertiesHeader);
singlePhaseTransportModel laminarTransport(U, phi);
if (turbulenceProperties.found("RASmodel"))
{
autoPtr<incompressible::RASmodel> RASmodel
autoPtr<incompressible::RASModel> RASModel
(
incompressible::RASmodel::New
incompressible::RASModel::New
(
U,
phi,
@ -121,20 +125,24 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
mesh,
IOobject::NO_READ
),
mag(phi) /
(
mag(phi)
/(
mesh.magSf()
* mesh.surfaceInterpolation::deltaCoeffs()
* fvc::interpolate(RASmodel->nuEff())
* fvc::interpolate(RASModel->nuEff())
)
)
);
}
else if (turbulenceProperties.found("LESmodel"))
else if (LESPropertiesHeader.headerOk())
{
autoPtr<incompressible::LESmodel> sgsModel
IOdictionary LESProperties(LESPropertiesHeader);
singlePhaseTransportModel laminarTransport(U, phi);
autoPtr<incompressible::LESModel> sgsModel
(
incompressible::LESmodel::New(U, phi, laminarTransport)
incompressible::LESModel::New(U, phi, laminarTransport)
);
PePtr.set
@ -148,8 +156,8 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
mesh,
IOobject::NO_READ
),
mag(phi) /
(
mag(phi)
/(
mesh.magSf()
* mesh.surfaceInterpolation::deltaCoeffs()
* fvc::interpolate(sgsModel->nuEff())
@ -158,14 +166,6 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
);
}
else
{
FatalErrorIn(args.executable())
<< "Cannot find turbulence model type in "
"RASmodel dictionary"
<< exit(FatalError);
}
}
else
{
IOdictionary transportProperties
(
@ -179,10 +179,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
)
);
dimensionedScalar nu
(
transportProperties.lookup("nu")
);
dimensionedScalar nu(transportProperties.lookup("nu"));
PePtr.set
(
@ -203,26 +200,11 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
}
else if (phi.dimensions() == dimensionSet(1, 0, -1, 0, 0))
{
IOobject turbulencePropertiesHeader
(
"turbulenceProperties",
runTime.constant(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE
);
if (turbulencePropertiesHeader.headerOk())
if (RASPropertiesHeader.headerOk())
{
IOdictionary turbulenceProperties
(
turbulencePropertiesHeader
);
IOdictionary RASProperties(RASPropertiesHeader);
autoPtr<basicThermo> thermo
(
basicThermo::New(mesh)
);
autoPtr<basicThermo> thermo(basicThermo::New(mesh));
volScalarField rho
(
@ -235,11 +217,9 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
thermo->rho()
);
if (turbulenceProperties.found("RASmodel"))
{
autoPtr<compressible::RASmodel> RASmodel
autoPtr<compressible::RASModel> RASModel
(
compressible::RASmodel::New
compressible::RASModel::New
(
rho,
U,
@ -259,20 +239,35 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
mesh,
IOobject::NO_READ
),
mag(phi) /
(
mag(phi)
/(
mesh.magSf()
* mesh.surfaceInterpolation::deltaCoeffs()
* fvc::interpolate(RASmodel->muEff())
* fvc::interpolate(RASModel->muEff())
)
)
);
}
else if (turbulenceProperties.found("LESmodel"))
else if (LESPropertiesHeader.headerOk())
{
autoPtr<compressible::LESmodel> sgsModel
IOdictionary LESProperties(LESPropertiesHeader);
autoPtr<basicThermo> thermo(basicThermo::New(mesh));
volScalarField rho
(
compressible::LESmodel::New(rho, U, phi, thermo())
IOobject
(
"rho",
runTime.timeName(),
mesh
),
thermo->rho()
);
autoPtr<compressible::LESModel> sgsModel
(
compressible::LESModel::New(rho, U, phi, thermo())
);
PePtr.set
@ -286,8 +281,8 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
mesh,
IOobject::NO_READ
),
mag(phi) /
(
mag(phi)
/(
mesh.magSf()
* mesh.surfaceInterpolation::deltaCoeffs()
* fvc::interpolate(sgsModel->muEff())
@ -296,14 +291,6 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
);
}
else
{
FatalErrorIn(args.executable())
<< "Cannot find turbulence model type in"
"RASmodel dictionary"
<< exit(FatalError);
}
}
else
{
IOdictionary transportProperties
(
@ -317,10 +304,7 @@ void Foam::calc(const argList& args, const Time& runTime, const fvMesh& mesh)
)
);
dimensionedScalar mu
(
transportProperties.lookup("mu")
);
dimensionedScalar mu(transportProperties.lookup("mu"));
PePtr.set
(

View File

@ -12,9 +12,9 @@ LIB_LIBS = \
-lfiniteVolume \
-lmeshTools \
-lincompressibleTransportModels \
-lincompressibleRASmodels \
-lincompressibleLESmodels \
-lincompressibleRASModels \
-lincompressibleLESModels \
-lbasicThermophysicalModels \
-lspecie \
-lcompressibleRASmodels \
-lcompressibleLESmodels
-lcompressibleRASModels \
-lcompressibleLESModels

View File

@ -30,11 +30,11 @@ License
#include "Time.H"
#include "incompressible/singlePhaseTransportModel/singlePhaseTransportModel.H"
#include "incompressible/RASmodel/RASmodel.H"
#include "incompressible/LESmodel/LESmodel.H"
#include "incompressible/RASModel/RASModel.H"
#include "incompressible/LESModel/LESModel.H"
#include "basicThermo.H"
#include "compressible/RASmodel/RASmodel.H"
#include "compressible/LESmodel/LESmodel.H"
#include "compressible/RASModel/RASModel.H"
#include "compressible/LESModel/LESModel.H"
// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * //
@ -48,37 +48,31 @@ namespace Foam
Foam::tmp<Foam::volSymmTensorField> Foam::forces::devRhoReff() const
{
if
(
obr_.foundObject<compressible::RASmodel>("turbulenceProperties")
)
if (obr_.foundObject<compressible::RASModel>("RASProperties"))
{
const compressible::RASmodel& ras
= obr_.lookupObject<compressible::RASmodel>
("turbulenceProperties");
const compressible::RASModel& ras
= obr_.lookupObject<compressible::RASModel>("RASProperties");
return ras.devRhoReff();
}
else if (obr_.foundObject<incompressible::RASmodel>("turbulenceProperties"))
else if (obr_.foundObject<incompressible::RASModel>("RASProperties"))
{
const incompressible::RASmodel& ras
= obr_.lookupObject<incompressible::RASmodel>
("turbulenceProperties");
const incompressible::RASModel& ras
= obr_.lookupObject<incompressible::RASModel>("RASProperties");
return rhoRef_*ras.devReff();
}
else if (obr_.foundObject<compressible::LESmodel>("turbulenceProperties"))
else if (obr_.foundObject<compressible::LESModel>("LESProperties"))
{
const compressible::LESmodel& les =
obr_.lookupObject<compressible::LESmodel>
("turbulenceProperties");
const compressible::LESModel& les =
obr_.lookupObject<compressible::LESModel>("LESProperties");
return les.devRhoBeff();
}
else if (obr_.foundObject<incompressible::LESmodel>("turbulenceProperties"))
else if (obr_.foundObject<incompressible::LESModel>("LESProperties"))
{
const incompressible::LESmodel& les
= obr_.lookupObject<incompressible::LESmodel>("turbulenceProperties");
const incompressible::LESModel& les
= obr_.lookupObject<incompressible::LESModel>("LESProperties");
return rhoRef_*les.devBeff();
}