Compare commits

..

2 Commits

12320 changed files with 58868 additions and 175584 deletions

View File

@ -49,7 +49,7 @@
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v2312|v2306|v2212|v2206|v2112 etc
OpenFOAM version : v2306|v2212|v2206|v2112|v2106 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc

3
.gitmodules vendored
View File

@ -17,6 +17,3 @@
[submodule "external-solver"]
path = modules/external-solver
url = https://develop.openfoam.com/Modules/external-solver.git
[submodule "turbulence-community"]
path = modules/turbulence-community
url = https://gitlab.com/openfoam/community/tc-turbulence/turbulence-community.git

View File

@ -33,7 +33,6 @@ It is likely incomplete...
- Alexander Kabat vel Job
- Thilo Knacke
- Shannon Leakey
- Sergey Lesnik
- Tommaso Lucchini
- Graham Macpherson
- Alexey Matveichev
@ -46,7 +45,6 @@ It is likely incomplete...
- Victor Olesen
- Evangelos Papoutsis-Kiachagias
- Juho Peltola
- Josep Pocurull
- Johan Roenby
- Henrik Rusche
- Bruno Santos
@ -61,7 +59,6 @@ It is likely incomplete...
- Vuko Vukcevic
- Yi Wang
- Norbert Weber
- Gregor Weiss
- Volker Weissmann
- Henry Weller
- Niklas Wikstrom

View File

@ -1,2 +1,2 @@
api=2312
api=2306
patch=0

View File

@ -40,9 +40,9 @@ Violations of the Trademark are monitored, and will be duly prosecuted.
If OpenFOAM has already been compiled on your system, simply source
the appropriate `etc/bashrc` or `etc/cshrc` file and get started.
For example, for the OpenFOAM-v2312 version:
For example, for the OpenFOAM-v2306 version:
```
source /installation/path/OpenFOAM-v2312/etc/bashrc
source /installation/path/OpenFOAM-v2306/etc/bashrc
```
## Compiling OpenFOAM
@ -127,8 +127,8 @@ These 3rd-party sources are normally located in a directory parallel
to the OpenFOAM directory. For example,
```
/path/parent
|-- OpenFOAM-v2312
\-- ThirdParty-v2312
|-- OpenFOAM-v2306
\-- ThirdParty-v2306
```
There are, however, many cases where this simple convention is inadequate:
@ -136,7 +136,7 @@ There are, however, many cases where this simple convention is inadequate:
operating system or cluster installation provides it)
* When we have changed the OpenFOAM directory name to some arbitrary
directory name, e.g. openfoam-sandbox2312, etc..
directory name, e.g. openfoam-sandbox2306, etc..
* When we would like any additional 3rd party software to be located
inside of the OpenFOAM directory to ensure that the installation is
@ -156,9 +156,9 @@ when locating the ThirdParty directory with the following precedence:
2. PREFIX/ThirdParty-VERSION
* this corresponds to the traditional approach
3. PREFIX/ThirdParty-vAPI
* allows for an updated value of VERSION, *eg*, `v2312-myCustom`,
* allows for an updated value of VERSION, *eg*, `v2306-myCustom`,
without requiring a renamed ThirdParty. The API value would still
be `2312` and the original `ThirdParty-v2312/` would be found.
be `2306` and the original `ThirdParty-v2306/` would be found.
4. PREFIX/ThirdParty-API
* same as the previous example, but using an unadorned API value.
5. PREFIX/ThirdParty-common
@ -213,4 +213,4 @@ ThirdParty directory will contain either an `Allwmake` file or a
- [Governance](http://www.openfoam.com/governance/), [Governance Projects](https://www.openfoam.com/governance/projects)
- [Contacting OpenCFD](http://www.openfoam.com/contact/)
Copyright 2016-2023 OpenCFD Ltd
Copyright 2016-2022 OpenCFD Ltd

View File

@ -118,7 +118,7 @@ int main(int argc, char *argv[])
fvm::laplacian(rAUf, p) == fvc::div(phiHbyA)
);
pEqn.solve(p.select(piso.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
phi = phiHbyA - pEqn.flux();

View File

@ -18,6 +18,6 @@ dimensionedScalar rho("rho", dimDensity, transportProperties);
scalar MaxCo =
max(mesh.surfaceInterpolation::deltaCoeffs()*c0).value()
*runTime.deltaTValue();
*runTime.deltaT().value();
Info<< "Max acoustic Courant Number = " << MaxCo << endl;

View File

@ -1,15 +1,10 @@
EXE_INC = \
-I$(LIB_SRC)/finiteVolume/lnInclude \
-I$(LIB_SRC)/meshTools/lnInclude \
-I$(LIB_SRC)/sampling/lnInclude \
-I$(LIB_SRC)/dynamicMesh/lnInclude \
-I$(LIB_SRC)/dynamicFvMesh/lnInclude
-I$(LIB_SRC)/sampling/lnInclude
EXE_LIBS = \
-lfiniteVolume \
-lfvOptions \
-lmeshTools \
-ldynamicMesh \
-ldynamicFvMesh \
-ltopoChangerFvMesh \
-lsampling

View File

@ -56,7 +56,6 @@ Description
\*---------------------------------------------------------------------------*/
#include "fvCFD.H"
#include "dynamicFvMesh.H"
#include "fvOptions.H"
#include "simpleControl.H"
@ -72,7 +71,7 @@ int main(int argc, char *argv[])
#include "addCheckCaseOptions.H"
#include "setRootCaseLists.H"
#include "createTime.H"
#include "createDynamicFvMesh.H"
#include "createMesh.H"
simpleControl simple(mesh);
@ -88,16 +87,6 @@ int main(int argc, char *argv[])
{
Info<< "Time = " << runTime.timeName() << nl << endl;
// Do any mesh changes
mesh.controlledUpdate();
if (mesh.changing())
{
// Calculate absolute flux
// from the mapped surface velocity
phi = mesh.Sf() & fvc::interpolate(U);
}
while (simple.correctNonOrthogonal())
{
fvScalarMatrix TEqn

View File

@ -69,8 +69,7 @@ Foam::XiEqModels::Gulder::~Gulder()
Foam::tmp<Foam::volScalarField> Foam::XiEqModels::Gulder::XiEq() const
{
volScalarField up(sqrt((2.0/3.0)*turbulence_.k()));
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
const volScalarField& epsilon = tepsilon();
const volScalarField& epsilon = turbulence_.epsilon();
if (subGridSchelkin_)
{

View File

@ -75,10 +75,8 @@ Foam::XiEqModels::SCOPEXiEq::~SCOPEXiEq()
Foam::tmp<Foam::volScalarField> Foam::XiEqModels::SCOPEXiEq::XiEq() const
{
const tmp<volScalarField> tk(turbulence_.k());
const volScalarField& k = tk();
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
const volScalarField& epsilon = tepsilon();
const volScalarField& k = turbulence_.k();
const volScalarField& epsilon = turbulence_.epsilon();
volScalarField up(sqrt((2.0/3.0)*k));
if (subGridSchelkin_)

View File

@ -66,8 +66,7 @@ Foam::XiGModels::KTS::~KTS()
Foam::tmp<Foam::volScalarField> Foam::XiGModels::KTS::G() const
{
volScalarField up(sqrt((2.0/3.0)*turbulence_.k()));
const tmp<volScalarField> tepsilon(turbulence_.epsilon());
const volScalarField& epsilon = tepsilon();
const volScalarField& epsilon = turbulence_.epsilon();
volScalarField tauEta(sqrt(mag(thermo_.muu()/(thermo_.rhou()*epsilon))));

View File

@ -27,7 +27,7 @@ if (pimple.transonic())
betav*fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -57,7 +57,7 @@ else
betav*fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -30,7 +30,7 @@ if (pimple.transonic())
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -66,7 +66,7 @@ else
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -35,7 +35,7 @@ if (pimple.transonic())
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -71,7 +71,7 @@ else
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -29,7 +29,7 @@ if (pimple.transonic())
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -64,7 +64,7 @@ else
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -6,7 +6,7 @@
solve
(
fvm::ddt(rho, Yi) - chemistry.RR(specieI),
"Yi"
mesh.solver("Yi")
);
}
}

View File

@ -1,5 +1,5 @@
if (adjustTimeStep)
{
runTime.setDeltaT(min(dtChem, maxDeltaT));
Info<< "deltaT = " << runTime.deltaTValue() << endl;
Info<< "deltaT = " << runTime.deltaT().value() << endl;
}

View File

@ -1,3 +1,3 @@
dtChem = chemistry.solve(runTime.deltaTValue());
dtChem = chemistry.solve(runTime.deltaT().value());
scalar Qdot = chemistry.Qdot()()[0]/rho[0];
integratedHeat += Qdot*runTime.deltaTValue();
integratedHeat += Qdot*runTime.deltaT().value();

View File

@ -35,7 +35,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YiEqn);
YiEqn.solve("Yi");
YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -36,7 +36,7 @@ while (pimple.correctNonOrthogonal())
+ fvOptions(psi, p_rgh, rho.name())
);
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -34,7 +34,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YiEqn);
YiEqn.solve("Yi");
YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -37,7 +37,7 @@ if (pimple.transonic())
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -72,7 +72,7 @@ else
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -49,7 +49,7 @@ if (pimple.transonic())
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -89,7 +89,7 @@ else
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -41,7 +41,7 @@ while (pimple.correctNonOrthogonal())
- fvm::laplacian(rhorAUf, p_rgh)
);
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -110,6 +110,15 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchScalarField> clone() const
{
return tmp<fvPatchScalarField>
(
new smoluchowskiJumpTFvPatchScalarField(*this)
);
}
//- Construct as copy setting internal field reference
smoluchowskiJumpTFvPatchScalarField
(
@ -117,22 +126,18 @@ public:
const DimensionedField<scalar, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<scalar>> clone() const
{
return fvPatchField<scalar>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<scalar>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchScalarField> clone
(
const DimensionedField<scalar, volMesh>& iF
) const
{
return fvPatchField<scalar>::Clone(*this, iF);
return tmp<fvPatchScalarField>
(
new smoluchowskiJumpTFvPatchScalarField(*this, iF)
);
}
// Mapping functions
//- Map (and resize as needed) from self given a mapping object

View File

@ -118,6 +118,15 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchVectorField> clone() const
{
return tmp<fvPatchVectorField>
(
new maxwellSlipUFvPatchVectorField(*this)
);
}
//- Construct as copy setting internal field reference
maxwellSlipUFvPatchVectorField
(
@ -125,19 +134,16 @@ public:
const DimensionedField<vector, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<vector>> clone() const
{
return fvPatchField<vector>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<vector>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchVectorField> clone
(
const DimensionedField<vector, volMesh>& iF
) const
{
return fvPatchField<vector>::Clone(*this, iF);
return tmp<fvPatchVectorField>
(
new maxwellSlipUFvPatchVectorField(*this, iF)
);
}

View File

@ -135,6 +135,15 @@ public:
const fixedRhoFvPatchScalarField&
);
//- Construct and return a clone
virtual tmp<fvPatchScalarField> clone() const
{
return tmp<fvPatchScalarField>
(
new fixedRhoFvPatchScalarField(*this)
);
}
//- Construct as copy setting internal field reference
fixedRhoFvPatchScalarField
(
@ -142,19 +151,16 @@ public:
const DimensionedField<scalar, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<scalar>> clone() const
{
return fvPatchField<scalar>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<scalar>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchScalarField> clone
(
const DimensionedField<scalar, volMesh>& iF
) const
{
return fvPatchField<scalar>::Clone(*this, iF);
return tmp<fvPatchScalarField>
(
new fixedRhoFvPatchScalarField(*this, iF)
);
}

View File

@ -1,9 +1,10 @@
volScalarField& p = thermo.p();
const volScalarField& T = thermo.T();
const volScalarField& psi = thermo.psi();
const volScalarField& mu = thermo.mu();
bool inviscid(true);
if (max(thermo.mu().cref().primitiveField()) > 0.0)
if (max(mu.primitiveField()) > 0.0)
{
inviscid = false;
}

View File

@ -17,7 +17,7 @@ tmp<GeometricField<Type, fvsPatchField, surfaceMesh>> interpolate
vf,
dir,
"reconstruct("
+ (reconFieldName.empty() ? vf.name() : reconFieldName)
+ (reconFieldName != word::null ? reconFieldName : vf.name())
+ ')'
)
);

View File

@ -63,7 +63,7 @@
fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
// Rhie & Chow interpolation (part 2)
if (pimple.finalNonOrthogonalIter())

View File

@ -72,7 +72,7 @@ if (mesh.changing())
divrhoU()
);
pcorrEqn.solve(pcorr.select(pimple.finalInnerIter()));
pcorrEqn.solve(mesh.solver(pcorr.select(pimple.finalInnerIter())));
//Bypass virtual layer
//mesh.fvMesh::solve(pcorrEqn, d);

View File

@ -56,7 +56,7 @@ if (pimple.transonic())
// Relax the pressure equation to ensure diagonal-dominance
pEqn.relax();
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -78,7 +78,7 @@ else
{
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAUf, p));
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -54,7 +54,7 @@ if (pimple.transonic())
// Relax the pressure equation to ensure diagonal-dominance
pEqn.relax();
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -76,7 +76,7 @@ else
{
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAUf, p));
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -65,7 +65,7 @@ if (pimple.transonic())
// Relax the pressure equation to ensure diagonal-dominance
pEqn.relax();
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -90,7 +90,7 @@ else
{
fvScalarMatrix pEqn(pDDtEqn - fvm::laplacian(rhorAtU, p));
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -127,7 +127,7 @@ int main(int argc, char *argv[])
);
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(piso.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
if (piso.finalNonOrthogonalIter())
{
@ -167,7 +167,7 @@ int main(int argc, char *argv[])
fvm::laplacian(rABf, pB) == fvc::div(phiB)
);
pBEqn.solve(pB.select(bpiso.finalInnerIter()));
pBEqn.solve(mesh.solver(pB.select(bpiso.finalInnerIter())));
if (bpiso.finalNonOrthogonalIter())
{

View File

@ -7,7 +7,7 @@
*mag(aMesh.edgeInterpolation::deltaCoeffs())
/rhol
)
).value()*runTime.deltaTValue();
).value()*runTime.deltaT().value();
Info<< "Max Capillary Courant Number = " << CoNumSigma << '\n' << endl;
}

View File

@ -5,7 +5,7 @@
(
"h",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
@ -20,7 +20,7 @@
(
"Us",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
@ -34,7 +34,7 @@
(
"phis",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::READ_IF_PRESENT,
IOobject::AUTO_WRITE
),
@ -48,7 +48,7 @@
(
"phi2s",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::READ_IF_PRESENT,
IOobject::AUTO_WRITE
),
@ -67,7 +67,7 @@
(
"Sm",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),
@ -82,7 +82,7 @@
(
"Sd",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),
@ -96,7 +96,7 @@
(
"Sg",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),
@ -112,7 +112,7 @@
(
"ps",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
@ -134,7 +134,7 @@
(
"manningField",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
@ -147,7 +147,7 @@
(
"frictionFactor",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),

View File

@ -7,7 +7,7 @@ volVectorField U
(
"U",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
@ -22,7 +22,7 @@ volScalarField H
(
"H",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),

View File

@ -47,10 +47,10 @@ if (aMesh.nInternalEdges())
);
CoNum = max(SfUfbyDelta/aMesh.magLe())
.value()*runTime.deltaTValue();
.value()*runTime.deltaT().value();
meanCoNum = (sum(SfUfbyDelta)/sum(aMesh.magLe()))
.value()*runTime.deltaTValue();
.value()*runTime.deltaT().value();
velMag = max(mag(phis)/aMesh.magLe()).value();
}

View File

@ -5,7 +5,7 @@ areaScalarField Cs
(
"Cs",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
@ -26,7 +26,7 @@ areaVectorField Us
(
"Us",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),
@ -58,7 +58,7 @@ edgeScalarField phis
(
"phis",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),

View File

@ -0,0 +1,2 @@
// Create Finite Area mesh
faMesh aMesh(mesh);

View File

@ -7,7 +7,7 @@
(
"Cvf",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
@ -24,7 +24,7 @@
(
"U",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),

View File

@ -5,7 +5,7 @@ areaScalarField Cs
(
"Cs",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::AUTO_WRITE
),
@ -37,7 +37,7 @@ areaVectorField Us
(
"Us",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::MUST_READ,
IOobject::NO_WRITE
),
@ -51,7 +51,7 @@ edgeScalarField phis
(
"phis",
runTime.timeName(),
aMesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::NO_WRITE
),

View File

@ -0,0 +1,2 @@
// Create Finite Area mesh
faMesh aMesh(mesh);

View File

@ -7,7 +7,7 @@
(
"Cvf",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),
@ -24,7 +24,7 @@
(
"U",
runTime.timeName(),
mesh.thisDb(),
mesh,
IOobject::NO_READ,
IOobject::AUTO_WRITE
),

View File

@ -27,7 +27,7 @@
p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell));
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -72,7 +72,7 @@ if (mesh.changing())
divrhoU()
);
//pcorrEqn.solve(pcorr.select(pimple.finalInnerIter()));
//pcorrEqn.solve(mesh.solver(pcorr.select(pimple.finalInnerIter())));
//Bypass virtual layer
const dictionary& d = mesh.solver
(

View File

@ -50,7 +50,7 @@ while (pimple.correctNonOrthogonal())
- fvm::laplacian(rhorAUf, p_rgh)
);
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -52,7 +52,7 @@ while (pimple.correctNonOrthogonal())
compressible ? getRefCellValue(p_rgh, pRefCell) : pRefValue
);
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -292,7 +292,8 @@ updateCoeffs()
// Since we're inside initEvaluate/evaluate there might be processor
// comms underway. Change the tag we use.
const int oldTag = UPstream::incrMsgType();
int oldTag = UPstream::msgType();
UPstream::msgType() = oldTag+1;
// Get the coupling information from the mappedPatchBase
const label patchi = patch().index();
@ -470,9 +471,10 @@ updateCoeffs()
<< regionTypeNames_ << nl << exit(FatalError);
}
UPstream::msgType(oldTag); // Restore tag
mixedFvPatchScalarField::updateCoeffs();
// Restore tag
UPstream::msgType() = oldTag;
}

View File

@ -196,6 +196,18 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchScalarField> clone() const
{
return tmp<fvPatchScalarField>
(
new turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField
(
*this
)
);
}
//- Construct as copy setting internal field reference
turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField
(
@ -203,19 +215,20 @@ public:
const DimensionedField<scalar, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<scalar>> clone() const
{
return fvPatchField<scalar>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<scalar>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchScalarField> clone
(
const DimensionedField<scalar, volMesh>& iF
) const
{
return fvPatchField<scalar>::Clone(*this, iF);
return tmp<fvPatchScalarField>
(
new turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField
(
*this,
iF
)
);
}

View File

@ -1,6 +1,6 @@
if (finalIter)
{
mesh.data().setFinalIteration(true);
mesh.data::add("finalIteration", true);
}
if (frozenFlow)
@ -35,5 +35,5 @@ else
if (finalIter)
{
mesh.data().setFinalIteration(false);
mesh.data::remove("finalIteration");
}

View File

@ -1,6 +1,6 @@
if (finalIter)
{
mesh.data().setFinalIteration(true);
mesh.data::add("finalIteration", true);
}
{
@ -22,7 +22,7 @@ if (finalIter)
fvOptions.constrain(hEqn);
hEqn.solve(h.select(finalIter));
hEqn.solve(mesh.solver(h.select(finalIter)));
fvOptions.correct(h);
}
@ -35,5 +35,5 @@ if (finalIter)
if (finalIter)
{
mesh.data().setFinalIteration(false);
mesh.data::remove("finalIteration");
}

View File

@ -33,7 +33,7 @@
}
else
{
EEqn.solve(he.select(finalIter));
EEqn.solve(mesh.solver(he.select(finalIter)));
fvOptions.correct(he);
thermo.correct();

View File

@ -28,7 +28,7 @@
- fvc::snGrad(p_rgh)
)*mesh.magSf()
),
U.select(finalIter)
mesh.solver(U.select(finalIter))
);
fvOptions.correct(U);

View File

@ -44,7 +44,7 @@ if (Y.size())
fvOptions.constrain(YiEqn);
YiEqn.solve("Yi");
YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -52,12 +52,15 @@ constrainPressure(p_rgh, rho, U, phiHbyA, rhorAUf, MRF);
p_rghEqn.solve
(
p_rgh.select
mesh.solver
(
p_rgh.select
(
oCorr == nOuterCorr-1
&& corr == nCorr-1
&& nonOrth == nNonOrthCorr
(
oCorr == nOuterCorr-1
&& corr == nCorr-1
&& nonOrth == nNonOrthCorr
)
)
)
);

View File

@ -1,6 +1,6 @@
if (finalIter)
{
mesh.data().setFinalIteration(true);
mesh.data::add("finalIteration", true);
}
if (frozenFlow)
@ -36,5 +36,5 @@ else
if (finalIter)
{
mesh.data().setFinalIteration(false);
mesh.data::remove("finalIteration");
}

View File

@ -1,8 +1,6 @@
bool coupled = false;
{
fvSolution solutionDict(runTime);
solutionDict.readIfPresent("coupledEnergyField", coupled);
}
fvSolution solutionDict(runTime);
bool coupled(solutionDict.getOrDefault("coupledEnergyField", false));
autoPtr<fvMatrix<scalar>> fvMatrixAssemblyPtr;

View File

@ -49,11 +49,11 @@ if (adjustTimeStep)
(
min
(
min(maxCo/CoNum, maxDi/DiNum)*runTime.deltaTValue(),
min(maxCo/CoNum, maxDi/DiNum)*runTime.deltaT().value(),
min(runTime.deltaTValue(), maxDeltaT)
)
);
Info<< "deltaT = " << runTime.deltaTValue() << endl;
Info<< "deltaT = " << runTime.deltaT().value() << endl;
}
}

View File

@ -59,12 +59,12 @@ if (adjustTimeStep)
(
min
(
min(deltaTFluid, maxDeltaTSolid)*runTime.deltaTValue(),
min(deltaTFluid, maxDeltaTSolid)*runTime.deltaT().value(),
maxDeltaT
)
);
Info<< "deltaT = " << runTime.deltaTValue() << endl;
Info<< "deltaT = " << runTime.deltaT().value() << endl;
}
// ************************************************************************* //

View File

@ -25,10 +25,10 @@
if (finalIter)
{
mesh.data().setFinalIteration(true);
mesh.data::add("finalIteration", true);
}
hEqn.solve(h.select(finalIter));
hEqn.solve(mesh.solver(h.select(finalIter)));
fvOptions.correct(h);
@ -39,7 +39,7 @@
if (finalIter)
{
mesh.data().setFinalIteration(false);
mesh.data::remove("finalIteration");
}
}
}

View File

@ -43,8 +43,6 @@ Description
int main(int argc, char *argv[])
{
#include "postProcess.H"
#include "setRootCase.H"
#include "createTime.H"
#include "createMesh.H"
@ -66,13 +64,13 @@ int main(int argc, char *argv[])
{
// Solve all primal equations
om.solvePrimalEquations();
// Clear sensitivities
om.clearSensitivities();
// Solve all adjoint equations
om.solveAdjointEquations();
}
// Update primal-based quantities of the adjoint solvers
om.updatePrimalBasedQuantities();
// Solve all adjoint equations
om.solveAdjointEquations();
}
Info<< "End\n" << endl;

View File

@ -85,6 +85,15 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchScalarField> clone() const
{
return tmp<fvPatchScalarField>
(
new adjointOutletPressureFvPatchScalarField(*this)
);
}
//- Construct as copy setting internal field reference
adjointOutletPressureFvPatchScalarField
(
@ -92,19 +101,16 @@ public:
const DimensionedField<scalar, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<scalar>> clone() const
{
return fvPatchField<scalar>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<scalar>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchScalarField> clone
(
const DimensionedField<scalar, volMesh>& iF
) const
{
return fvPatchField<scalar>::Clone(*this, iF);
return tmp<fvPatchScalarField>
(
new adjointOutletPressureFvPatchScalarField(*this, iF)
);
}

View File

@ -85,6 +85,15 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchVectorField> clone() const
{
return tmp<fvPatchVectorField>
(
new adjointOutletVelocityFvPatchVectorField(*this)
);
}
//- Construct as copy setting internal field reference
adjointOutletVelocityFvPatchVectorField
(
@ -92,19 +101,16 @@ public:
const DimensionedField<vector, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<vector>> clone() const
{
return fvPatchField<vector>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<vector>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchVectorField> clone
(
const DimensionedField<vector, volMesh>& iF
) const
{
return fvPatchField<vector>::Clone(*this, iF);
return tmp<fvPatchVectorField>
(
new adjointOutletVelocityFvPatchVectorField(*this, iF)
);
}

View File

@ -141,7 +141,7 @@ int main(int argc, char *argv[])
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(piso.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
if (piso.finalNonOrthogonalIter())
{

View File

@ -114,7 +114,7 @@ int main(int argc, char *argv[])
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(piso.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
if (piso.finalNonOrthogonalIter())
{

View File

@ -40,7 +40,7 @@ while (pimple.correctNonOrthogonal())
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -32,7 +32,7 @@ while (pimple.correctNonOrthogonal())
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -45,7 +45,7 @@ while (pimple.correctNonOrthogonal())
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -26,7 +26,7 @@ while (piso.correctNonOrthogonal())
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(piso.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(piso.finalInnerIter())));
if (piso.finalNonOrthogonalIter())
{

View File

@ -6,7 +6,6 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2017 OpenFOAM Foundation
Copyright (C) 2023 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -106,9 +105,6 @@ int main(int argc, char *argv[])
#include "CourantNo.H"
// Update settings from the control dictionary
piso.read();
// Pressure-velocity PISO corrector
{
#include "UEqn.H"

View File

@ -135,7 +135,7 @@ int main(int argc, char *argv[])
- fvm::laplacian(ghrAUf, h)
);
hEqn.solve(h.select(pimple.finalInnerIter()));
hEqn.solve(mesh.solver(h.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -34,7 +34,7 @@
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -32,7 +32,7 @@
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -36,7 +36,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YiEqn);
YiEqn.solve("Yi");
YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -33,7 +33,7 @@ if (pimple.transonic())
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -69,7 +69,7 @@ else
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -34,7 +34,7 @@ while (pimple.correctNonOrthogonal())
pEqn.setReference(pRefCell, pRefValue);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -37,7 +37,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YEqn);
YEqn.solve("Yi");
YEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -47,7 +47,7 @@ while (pimple.correctNonOrthogonal())
- fvm::laplacian(rhorAUf, p_rgh)
);
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -34,7 +34,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YEqn);
YEqn.solve("Yi");
YEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -34,7 +34,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YEqn);
YEqn.solve("Yi");
YEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -35,7 +35,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YEqn);
YEqn.solve("Yi");
YEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi);

View File

@ -41,7 +41,7 @@ if (pimple.transonic())
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -77,7 +77,7 @@ else
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -42,7 +42,7 @@ if (pimple.transonic())
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{
@ -77,7 +77,7 @@ else
+ fvOptions(psi, p, rho.name())
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -38,7 +38,7 @@
p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell));
p_rghEqn.solve(p_rgh.select(pimple.finalInnerIter()));
p_rghEqn.solve(mesh.solver(p_rgh.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -36,7 +36,7 @@
- fvm::laplacian(rhorAUf, p)
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -33,7 +33,7 @@
- fvm::laplacian(rhorAUf, p)
);
pEqn.solve(p.select(pimple.finalInnerIter()));
pEqn.solve(mesh.solver(p.select(pimple.finalInnerIter())));
if (pimple.finalNonOrthogonalIter())
{

View File

@ -99,7 +99,7 @@
+ (max(alpha2, scalar(0))/rho2)*p_rghEqnComp2()
)
+ p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

View File

@ -86,7 +86,6 @@ VoFPatchTransfer::VoFPatchTransfer
wordRes patchNames;
if (coeffDict_.readIfPresent("patches", patchNames))
{
// Can also use pbm.indices(), but no warnings...
patchIDs_ = pbm.patchSet(patchNames).sortedToc();
Info<< " applying to " << patchIDs_.size() << " patches:" << nl;
@ -160,8 +159,7 @@ void VoFPatchTransfer::correct
const volScalarField& heVoF = thermo.thermo1().he();
const volScalarField& TVoF = thermo.thermo1().T();
const volScalarField CpVoF(thermo.thermo1().Cp());
const tmp<volScalarField> trhoVoF(thermo.thermo1().rho());
const volScalarField& rhoVoF = trhoVoF();
const volScalarField& rhoVoF = thermo.thermo1().rho()();
const volScalarField& alphaVoF = thermo.alpha1();
forAll(patchIDs_, pidi)

View File

@ -108,7 +108,7 @@
solve
(
p_rghEqnComp1() + p_rghEqnComp2() + p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

View File

@ -124,7 +124,7 @@
solve
(
p_rghEqnComp1() + p_rghEqnComp2() + p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

View File

@ -110,7 +110,7 @@
solve
(
p_rghEqnComp1() + p_rghEqnComp2() + p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

View File

@ -108,7 +108,7 @@
solve
(
p_rghEqnComp1() + p_rghEqnComp2() + p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

View File

@ -135,14 +135,14 @@ public:
virtual volScalarField& he()
{
NotImplemented;
return const_cast<volScalarField&>(volScalarField::null());
return thermo1_->he();
}
//- Enthalpy/Internal energy [J/kg]
virtual const volScalarField& he() const
{
NotImplemented;
return volScalarField::null();
return thermo1_->he();
}
//- Enthalpy/Internal energy
@ -213,7 +213,7 @@ public:
) const
{
NotImplemented;
return nullptr;
return tmp<scalarField>::New(p);
}
//- Heat capacity at constant volume [J/kg/K]
@ -236,7 +236,7 @@ public:
) const
{
NotImplemented;
return nullptr;
return tmp<scalarField>::New(p);
}
//- Gamma = Cp/Cv []

View File

@ -164,6 +164,15 @@ public:
const fvPatchFieldMapper&
);
//- Construct and return a clone
virtual tmp<fvPatchScalarField> clone() const
{
return tmp<fvPatchScalarField>
(
new alphaContactAngleFvPatchScalarField(*this)
);
}
//- Construct as copy setting internal field reference
alphaContactAngleFvPatchScalarField
(
@ -171,19 +180,16 @@ public:
const DimensionedField<scalar, volMesh>&
);
//- Return a clone
virtual tmp<fvPatchField<scalar>> clone() const
{
return fvPatchField<scalar>::Clone(*this);
}
//- Clone with an internal field reference
virtual tmp<fvPatchField<scalar>> clone
//- Construct and return a clone setting internal field reference
virtual tmp<fvPatchScalarField> clone
(
const DimensionedField<scalar, volMesh>& iF
) const
{
return fvPatchField<scalar>::Clone(*this, iF);
return tmp<fvPatchScalarField>
(
new alphaContactAngleFvPatchScalarField(*this, iF)
);
}

View File

@ -1075,7 +1075,7 @@ void Foam::multiphaseMixtureThermo::solveAlphas
MULES::limit
(
1.0/mesh_.time().deltaTValue(),
1.0/mesh_.time().deltaT().value(),
geometricOneField(),
alpha,
phi_,

View File

@ -243,14 +243,14 @@ public:
virtual volScalarField& he()
{
NotImplemented;
return const_cast<volScalarField&>(volScalarField::null());
return phases_[0].thermo().he();
}
//- Enthalpy/Internal energy [J/kg]
virtual const volScalarField& he() const
{
NotImplemented;
return volScalarField::null();
return phases_[0].thermo().he();
}
//- Enthalpy/Internal energy
@ -327,7 +327,7 @@ public:
) const
{
NotImplemented;
return nullptr;
return tmp<scalarField>::New(p);
}
//- Heat capacity at constant volume [J/kg/K]
@ -350,7 +350,7 @@ public:
) const
{
NotImplemented;
return nullptr;
return tmp<scalarField>::New(p);
}
//- Gamma = Cp/Cv []

View File

@ -28,8 +28,7 @@
forAllConstIters(mixture.phases(), phase)
{
const rhoThermo& thermo = phase().thermo();
const tmp<volScalarField> trho(thermo.rho());
const volScalarField& rho = trho();
const volScalarField& rho = thermo.rho()();
p_rghEqnComps.set
(
@ -81,7 +80,7 @@
(
p_rghEqnComp
+ p_rghEqnIncomp,
p_rgh.select(pimple.finalInnerIter())
mesh.solver(p_rgh.select(pimple.finalInnerIter()))
);
if (pimple.finalNonOrthogonalIter())

Some files were not shown because too many files have changed in this diff Show More