Compare commits

..

3 Commits

Author SHA1 Message Date
622f476b32 ENH: additional SHA1Digest constructors and methods
- data_bytes(), size_bytes() methods to support broadcasting or
  gather/scatter content. Additional construct from raw bytes
  to support transmitted content.
2023-03-20 11:36:50 +01:00
7389ce15ce STYLE: readOnProc/writeOnProc instead of 'valid' for IO 2023-03-16 11:20:09 +01:00
f801e99f9e STYLE: use readValueEntry in BCs. Assign Zero for refValue/refGrad 2023-03-16 11:20:08 +01:00
11218 changed files with 44962 additions and 91607 deletions

View File

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

3
.gitmodules vendored
View File

@ -17,6 +17,3 @@
[submodule "external-solver"] [submodule "external-solver"]
path = modules/external-solver path = modules/external-solver
url = https://develop.openfoam.com/Modules/external-solver.git 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

@ -96,12 +96,10 @@ echo " ${WM_PROJECT_DIR##*/}"
echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler" echo " $WM_COMPILER ${WM_COMPILER_TYPE:-system} compiler"
echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}" echo " ${WM_OPTIONS}, with ${WM_MPLIB} ${FOAM_MPI}"
echo echo
echo " api = $(etc/openfoam -show-api 2>/dev/null)"
# The api/patch information echo " patch = $(etc/openfoam -show-patch 2>/dev/null)"
sed -e 's/^/ /; s/=/ = /' ./META-INFO/api-info 2>/dev/null || true echo " bin = $(_foamCountDirEntries "$FOAM_APPBIN") entries"
echo " lib = $(_foamCountDirEntries "$FOAM_LIBBIN") entries"
echo " bin = $(_foamCountDirEntries "$FOAM_APPBIN") entries"
echo " lib = $(_foamCountDirEntries "$FOAM_LIBBIN") entries"
echo echo
echo ======================================== echo ========================================

View File

@ -5,22 +5,17 @@ It is likely incomplete...
## Contributors (alphabetical by surname) ## Contributors (alphabetical by surname)
- Horacio Aguerre
- Yu Ankun
- Tetsuo Aoyagi - Tetsuo Aoyagi
- Akira Azami - Akira Azami
- William Bainbridge - William Bainbridge
- Gabriel Barajas - Gabriel Barajas
- Kutalmis Bercin - Kutalmis Bercin
- Julius Bergmann
- Ivor Clifford - Ivor Clifford
- Greg Collecutt - Greg Collecutt
- Jonathan Cranford - Jonathan Cranford
- Santiago Marquez Damian
- Sergio Ferraris - Sergio Ferraris
- Matej Forman - Matej Forman
- Marian Fuchs - Marian Fuchs
- Gabriel Gerlero
- Pawan Ghildiyal - Pawan Ghildiyal
- Chris Greenshields - Chris Greenshields
- Bernhard Gschaider - Bernhard Gschaider
@ -33,7 +28,6 @@ It is likely incomplete...
- Alexander Kabat vel Job - Alexander Kabat vel Job
- Thilo Knacke - Thilo Knacke
- Shannon Leakey - Shannon Leakey
- Sergey Lesnik
- Tommaso Lucchini - Tommaso Lucchini
- Graham Macpherson - Graham Macpherson
- Alexey Matveichev - Alexey Matveichev
@ -56,12 +50,8 @@ It is likely incomplete...
- Gavin Tabor - Gavin Tabor
- Zeljko Tukovic - Zeljko Tukovic
- Eugene De Villiers - Eugene De Villiers
- Louis Vittoz
- Vuko Vukcevic
- Yi Wang - Yi Wang
- Norbert Weber - Norbert Weber
- Gregor Weiss
- Volker Weissmann
- Henry Weller - Henry Weller
- Niklas Wikstrom - Niklas Wikstrom
- Guanyang Xue - Guanyang Xue

View File

@ -1,2 +1,2 @@
api=2309 api=2301
patch=0 patch=230110

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 If OpenFOAM has already been compiled on your system, simply source
the appropriate `etc/bashrc` or `etc/cshrc` file and get started. the appropriate `etc/bashrc` or `etc/cshrc` file and get started.
For example, for the OpenFOAM-v2306 version: For example, for the OpenFOAM-v2212 version:
``` ```
source /installation/path/OpenFOAM-v2306/etc/bashrc source /installation/path/OpenFOAM-v2212/etc/bashrc
``` ```
## Compiling OpenFOAM ## Compiling OpenFOAM
@ -127,8 +127,8 @@ These 3rd-party sources are normally located in a directory parallel
to the OpenFOAM directory. For example, to the OpenFOAM directory. For example,
``` ```
/path/parent /path/parent
|-- OpenFOAM-v2306 |-- OpenFOAM-v2212
\-- ThirdParty-v2306 \-- ThirdParty-v2212
``` ```
There are, however, many cases where this simple convention is inadequate: 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) operating system or cluster installation provides it)
* When we have changed the OpenFOAM directory name to some arbitrary * When we have changed the OpenFOAM directory name to some arbitrary
directory name, e.g. openfoam-sandbox2306, etc.. directory name, e.g. openfoam-sandbox2212, etc..
* When we would like any additional 3rd party software to be located * When we would like any additional 3rd party software to be located
inside of the OpenFOAM directory to ensure that the installation is 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 2. PREFIX/ThirdParty-VERSION
* this corresponds to the traditional approach * this corresponds to the traditional approach
3. PREFIX/ThirdParty-vAPI 3. PREFIX/ThirdParty-vAPI
* allows for an updated value of VERSION, *eg*, `v2306-myCustom`, * allows for an updated value of VERSION, *eg*, `v2212-myCustom`,
without requiring a renamed ThirdParty. The API value would still without requiring a renamed ThirdParty. The API value would still
be `2306` and the original `ThirdParty-v2306/` would be found. be `2212` and the original `ThirdParty-v2212/` would be found.
4. PREFIX/ThirdParty-API 4. PREFIX/ThirdParty-API
* same as the previous example, but using an unadorned API value. * same as the previous example, but using an unadorned API value.
5. PREFIX/ThirdParty-common 5. PREFIX/ThirdParty-common

View File

@ -30,6 +30,6 @@ volVectorField U
#include "createPhi.H" #include "createPhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
#include "readTurbulenceProperties.H" #include "readTurbulenceProperties.H"

View File

@ -118,7 +118,7 @@ int main(int argc, char *argv[])
fvm::laplacian(rAUf, p) == fvc::div(phiHbyA) 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(); phi = phiHbyA - pEqn.flux();

View File

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

View File

@ -1,6 +1,6 @@
const dictionary& potentialFlow const dictionary& potentialFlow
( (
mesh.solution().solutionDict("potentialFlow") mesh.solutionDict().subDict("potentialFlow")
); );
const int nNonOrthCorr const int nNonOrthCorr

View File

@ -113,6 +113,6 @@ setRefCell
PhiRefCell, PhiRefCell,
PhiRefValue PhiRefValue
); );
mesh.schemes().setFluxRequired(Phi.name()); mesh.setFluxRequired(Phi.name());
#include "createMRF.H" #include "createMRF.H"

View File

@ -1,6 +1,6 @@
const dictionary& potentialFlow const dictionary& potentialFlow
( (
mesh.solution().solutionDict("potentialFlow") mesh.solutionDict().subDict("potentialFlow")
); );
const int nNonOrthCorr const int nNonOrthCorr

View File

@ -6,7 +6,7 @@
\\/ M anipulation | \\/ M anipulation |
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2019-2020,2023 OpenCFD Ltd. Copyright (C) 2019-2020 OpenCFD Ltd.
------------------------------------------------------------------------------- -------------------------------------------------------------------------------
License License
This file is part of OpenFOAM. This file is part of OpenFOAM.
@ -132,11 +132,6 @@ void PDRkEpsilon::correct()
// Update epsilon and G at the wall // Update epsilon and G at the wall
epsilon_.boundaryFieldRef().updateCoeffs(); epsilon_.boundaryFieldRef().updateCoeffs();
// Push new cell values to
// coupled neighbours. Note that we want to avoid the re-updateCoeffs
// of the wallFunctions so make sure to bypass the evaluate on
// those patches and only do the coupled ones.
epsilon_.boundaryFieldRef().evaluateCoupled<coupledFvPatch>();
// Add the blockage generation term so that it is included consistently // Add the blockage generation term so that it is included consistently
// in both the k and epsilon equations // in both the k and epsilon equations

View File

@ -5,7 +5,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
mesh, mesh,
fields, fields,
phi, phi,
mesh.schemes().div("div(phi,ft_b_ha_hau)") mesh.divScheme("div(phi,ft_b_ha_hau)")
) )
); );

View File

@ -43,7 +43,7 @@ volVectorField U
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::RASModel> turbulence autoPtr<compressible::RASModel> turbulence

View File

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

View File

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

View File

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

View File

@ -223,7 +223,7 @@ if (ign.ignited())
volScalarField R(Gstar*XiEqStar/(XiEqStar - scalar(1))); volScalarField R(Gstar*XiEqStar/(XiEqStar - scalar(1)));
volScalarField G(R*(XiEq - scalar(1.001))/XiEq); volScalarField G(R*(XiEq - scalar(1.001))/XiEq);
//R *= (Gstar + 2*mag(devSymm(fvc::grad(U))))/Gstar; //R *= (Gstar + 2*mag(dev(symm(fvc::grad(U)))))/Gstar;
// Solve for the flame wrinkling // Solve for the flame wrinkling
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@ -44,7 +44,7 @@ volVectorField U
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -5,7 +5,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
mesh, mesh,
fields, fields,
phi, phi,
mesh.schemes().div("div(phi,ft_b_ha_hau)") mesh.divScheme("div(phi,ft_b_ha_hau)")
) )
); );

View File

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

View File

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

View File

@ -1,5 +1,5 @@
if (adjustTimeStep) if (adjustTimeStep)
{ {
runTime.setDeltaT(min(dtChem, maxDeltaT)); 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]; scalar Qdot = chemistry.Qdot()()[0]/rho[0];
integratedHeat += Qdot*runTime.deltaTValue(); integratedHeat += Qdot*runTime.deltaT().value();

View File

@ -5,7 +5,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
mesh, mesh,
fields, fields,
phi, phi,
mesh.schemes().div("div(phi,Yi_h)") mesh.divScheme("div(phi,Yi_h)")
) )
); );
{ {
@ -35,7 +35,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YiEqn); fvOptions.constrain(YiEqn);
YiEqn.solve("Yi"); YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi); fvOptions.correct(Yi);

View File

@ -89,7 +89,7 @@ volScalarField p_rgh
mesh mesh
); );
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
#include "phrghEqn.H" #include "phrghEqn.H"

View File

@ -36,7 +36,7 @@ while (pimple.correctNonOrthogonal())
+ fvOptions(psi, p_rgh, rho.name()) + 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()) if (pimple.finalNonOrthogonalIter())
{ {

View File

@ -5,7 +5,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
mesh, mesh,
fields, fields,
phi, phi,
mesh.schemes().div("div(phi,Yi_h)") mesh.divScheme("div(phi,Yi_h)")
) )
); );
@ -34,7 +34,7 @@ tmp<fv::convectionScheme<scalar>> mvConvection
fvOptions.constrain(YiEqn); fvOptions.constrain(YiEqn);
YiEqn.solve("Yi"); YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi); fvOptions.correct(Yi);

View File

@ -47,7 +47,7 @@ volScalarField& p = thermo.p();
pressureControl pressureControl(p, rho, pimple.dict(), false); pressureControl pressureControl(p, rho, pimple.dict(), false);
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info << "Creating turbulence model.\n" << nl; Info << "Creating turbulence model.\n" << nl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

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

View File

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

View File

@ -48,7 +48,7 @@ volScalarField& p = thermo.p();
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info << "Creating turbulence model.\n" << nl; Info << "Creating turbulence model.\n" << nl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -41,7 +41,7 @@ while (pimple.correctNonOrthogonal())
- fvm::laplacian(rhorAUf, p_rgh) - 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()) if (pimple.finalNonOrthogonalIter())
{ {

View File

@ -49,7 +49,7 @@ volScalarField& p = thermo.p();
pressureControl pressureControl(p, rho, pimple.dict(), false); pressureControl pressureControl(p, rho, pimple.dict(), false);
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info << "Creating turbulence model.\n" << nl; Info << "Creating turbulence model.\n" << nl;

View File

@ -105,8 +105,7 @@ Foam::smoluchowskiJumpTFvPatchScalarField::smoluchowskiJumpTFvPatchScalarField
if (!this->readValueEntry(dict)) if (!this->readValueEntry(dict))
{ {
// Fallback: set to the internal field fvPatchField<scalar>::operator=(patchInternalField());
fvPatchField<scalar>::patchInternalField(*this);
} }
refValue() = *this; refValue() = *this;

View File

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

View File

@ -1,5 +1,5 @@
word fluxScheme("Kurganov"); word fluxScheme("Kurganov");
if (mesh.schemes().dict().readIfPresent("fluxScheme", fluxScheme)) if (mesh.schemesDict().readIfPresent("fluxScheme", fluxScheme))
{ {
if ((fluxScheme == "Tadmor") || (fluxScheme == "Kurganov")) if ((fluxScheme == "Tadmor") || (fluxScheme == "Kurganov"))
{ {

View File

@ -79,7 +79,7 @@ autoPtr<compressible::turbulenceModel> turbulence
) )
); );
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
#include "createMRF.H" #include "createMRF.H"

View File

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

View File

@ -42,7 +42,7 @@ volVectorField U
pressureControl pressureControl(p, rho, pimple.dict(), false); pressureControl pressureControl(p, rho, pimple.dict(), false);
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -29,7 +29,7 @@ if (mesh.changing())
wordList pcorrTypes wordList pcorrTypes
( (
p.boundaryField().size(), p.boundaryField().size(),
fvPatchFieldBase::zeroGradientType() zeroGradientFvPatchScalarField::typeName
); );
// Set BCs of pcorr to fixed-value for patches at which p is fixed // Set BCs of pcorr to fixed-value for patches at which p is fixed
@ -56,7 +56,7 @@ if (mesh.changing())
pcorrTypes pcorrTypes
); );
mesh.schemes().setFluxRequired(pcorr.name()); mesh.setFluxRequired(pcorr.name());
{ {
dimensionedScalar rAUf("rAUf", dimTime, 1.0); dimensionedScalar rAUf("rAUf", dimTime, 1.0);
@ -72,7 +72,7 @@ if (mesh.changing())
divrhoU() divrhoU()
); );
pcorrEqn.solve(pcorr.select(pimple.finalInnerIter())); pcorrEqn.solve(mesh.solver(pcorr.select(pimple.finalInnerIter())));
//Bypass virtual layer //Bypass virtual layer
//mesh.fvMesh::solve(pcorrEqn, d); //mesh.fvMesh::solve(pcorrEqn, d);

View File

@ -44,7 +44,7 @@ pressureControl pressureControl(p, rho, pimple.dict(), false);
const dimensionedScalar rhoMax("rhoMax", dimDensity, GREAT, pimple.dict()); const dimensionedScalar rhoMax("rhoMax", dimDensity, GREAT, pimple.dict());
const dimensionedScalar rhoMin("rhoMin", dimDensity, Zero, pimple.dict()); const dimensionedScalar rhoMin("rhoMin", dimDensity, Zero, pimple.dict());
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
#include "createDpdt.H" #include "createDpdt.H"

View File

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

View File

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

View File

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

View File

@ -40,7 +40,7 @@ volVectorField U
pressureControl pressureControl(p, rho, simple.dict()); pressureControl pressureControl(p, rho, simple.dict());
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -40,7 +40,7 @@ volVectorField U
pressureControl pressureControl(p, rho, simple.dict()); pressureControl pressureControl(p, rho, simple.dict());
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -36,7 +36,7 @@ volVectorField U
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
Info<< "Creating turbulence model\n" << endl; Info<< "Creating turbulence model\n" << endl;
autoPtr<compressible::turbulenceModel> turbulence autoPtr<compressible::turbulenceModel> turbulence

View File

@ -46,4 +46,4 @@ volScalarField rho
#include "compressibleCreatePhi.H" #include "compressibleCreatePhi.H"
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());

View File

@ -114,5 +114,5 @@ label pRefCell = 0;
scalar pRefValue = 0.0; scalar pRefValue = 0.0;
setRefCell(p, piso.dict(), pRefCell, pRefValue); setRefCell(p, piso.dict(), pRefCell, pRefValue);
mesh.schemes().setFluxRequired(p.name()); mesh.setFluxRequired(p.name());
mesh.schemes().setFluxRequired(pB.name()); mesh.setFluxRequired(pB.name());

View File

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

View File

@ -1,3 +1,3 @@
const dictionary& Bpiso = mesh.solution().solutionDict("BPISO"); const dictionary& Bpiso = mesh.solutionDict().subDict("BPISO");
const int nBcorr = Bpiso.getOrDefault<int>("nCorrectors", 1); const int nBcorr = Bpiso.getOrDefault<int>("nCorrectors", 1);

View File

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

View File

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

View File

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

View File

@ -87,13 +87,7 @@ int main(int argc, char *argv[])
( (
fam::ddt(h, Us) fam::ddt(h, Us)
+ fam::div(phi2s, Us) + fam::div(phi2s, Us)
+ fam::Sp + fam::Sp(0.0125*frictionFactor*mag(Us), Us)
(
0.0125
*frictionFactor.internalField()
*mag(Us.internalField()),
Us
)
== ==
Gs*h Gs*h
- fam::Sp(Sd, Us) - fam::Sp(Sd, Us)

View File

@ -1 +1 @@
loopControl iters(runTime, aMesh.solution().solutionDict(), "solution"); loopControl iters(runTime, aMesh.solutionDict(), "solution");

View File

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

View File

@ -5,7 +5,7 @@ areaScalarField Cs
( (
"Cs", "Cs",
runTime.timeName(), runTime.timeName(),
aMesh.thisDb(), mesh,
IOobject::MUST_READ, IOobject::MUST_READ,
IOobject::AUTO_WRITE IOobject::AUTO_WRITE
), ),
@ -26,7 +26,7 @@ areaVectorField Us
( (
"Us", "Us",
runTime.timeName(), runTime.timeName(),
aMesh.thisDb(), mesh,
IOobject::NO_READ, IOobject::NO_READ,
IOobject::NO_WRITE IOobject::NO_WRITE
), ),
@ -47,7 +47,6 @@ forAll(Us, faceI)
Us[faceI].z() = Us[faceI].z() =
Uinf.value()*0.25*R[faceI].x()*R[faceI].z()/sqr(mag(R[faceI])); Uinf.value()*0.25*R[faceI].x()*R[faceI].z()/sqr(mag(R[faceI]));
} }
Us.boundaryFieldRef().evaluateCoupled<coupledFaPatch>();
Us -= aMesh.faceAreaNormals()*(aMesh.faceAreaNormals() & Us); Us -= aMesh.faceAreaNormals()*(aMesh.faceAreaNormals() & Us);
@ -58,7 +57,7 @@ edgeScalarField phis
( (
"phis", "phis",
runTime.timeName(), runTime.timeName(),
aMesh.thisDb(), mesh,
IOobject::NO_READ, IOobject::NO_READ,
IOobject::NO_WRITE IOobject::NO_WRITE
), ),

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -119,7 +119,7 @@ if (p_rgh.needReference())
); );
} }
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
#include "createMRF.H" #include "createMRF.H"
#include "createIncompressibleRadiationModel.H" #include "createIncompressibleRadiationModel.H"

View File

@ -27,7 +27,7 @@
p_rghEqn.setReference(pRefCell, getRefCellValue(p_rgh, pRefCell)); 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()) if (pimple.finalNonOrthogonalIter())
{ {

View File

@ -119,7 +119,7 @@ if (p_rgh.needReference())
); );
} }
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
#include "createMRF.H" #include "createMRF.H"
#include "createIncompressibleRadiationModel.H" #include "createIncompressibleRadiationModel.H"

View File

@ -74,7 +74,7 @@ volScalarField p_rgh
// Force p_rgh to be consistent with p // Force p_rgh to be consistent with p
p_rgh = p - rho*gh; p_rgh = p - rho*gh;
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
label pRefCell = 0; label pRefCell = 0;
scalar pRefValue = 0.0; scalar pRefValue = 0.0;

View File

@ -29,7 +29,7 @@ if (mesh.changing())
wordList pcorrTypes wordList pcorrTypes
( (
p.boundaryField().size(), p.boundaryField().size(),
fvPatchFieldBase::zeroGradientType() zeroGradientFvPatchScalarField::typeName
); );
// Set BCs of pcorr to fixed-value for patches at which p is fixed // Set BCs of pcorr to fixed-value for patches at which p is fixed
@ -56,7 +56,7 @@ if (mesh.changing())
pcorrTypes pcorrTypes
); );
mesh.schemes().setFluxRequired(pcorr.name()); mesh.setFluxRequired(pcorr.name());
{ {
dimensionedScalar rAUf("rAUf", dimTime, 1.0); dimensionedScalar rAUf("rAUf", dimTime, 1.0);
@ -72,7 +72,7 @@ if (mesh.changing())
divrhoU() divrhoU()
); );
//pcorrEqn.solve(pcorr.select(pimple.finalInnerIter())); //pcorrEqn.solve(mesh.solver(pcorr.select(pimple.finalInnerIter())));
//Bypass virtual layer //Bypass virtual layer
const dictionary& d = mesh.solver const dictionary& d = mesh.solver
( (

View File

@ -71,7 +71,7 @@ volScalarField p_rgh
// Force p_rgh to be consistent with p // Force p_rgh to be consistent with p
p_rgh = p - rho*gh; p_rgh = p - rho*gh;
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
label pRefCell = 0; label pRefCell = 0;
scalar pRefValue = 0.0; scalar pRefValue = 0.0;

View File

@ -50,7 +50,7 @@ while (pimple.correctNonOrthogonal())
- fvm::laplacian(rhorAUf, p_rgh) - 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()) if (pimple.finalNonOrthogonalIter())
{ {

View File

@ -52,7 +52,7 @@ while (pimple.correctNonOrthogonal())
compressible ? getRefCellValue(p_rgh, pRefCell) : pRefValue 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()) if (pimple.finalNonOrthogonalIter())
{ {

View File

@ -81,7 +81,7 @@ setRefCell
pRefValue pRefValue
); );
mesh.schemes().setFluxRequired(p_rgh.name()); mesh.setFluxRequired(p_rgh.name());
dimensionedScalar initialMass = fvc::domainIntegrate(rho); dimensionedScalar initialMass = fvc::domainIntegrate(rho);
dimensionedScalar totalVolume = sum(mesh.V()); dimensionedScalar totalVolume = sum(mesh.V());

View File

@ -108,7 +108,7 @@ forAll(fluidRegions, i)
IOobject::READ_IF_PRESENT, IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE IOobject::NO_WRITE
), ),
dimensionedScalar(word::null, dimLength, Zero) dimensionedScalar("hRef", dimLength, Zero) // uses name
) )
); );
@ -174,7 +174,7 @@ forAll(fluidRegions, i)
// Force p_rgh to be consistent with p // Force p_rgh to be consistent with p
p_rghFluid[i] = thermoFluid[i].p() - rhoFluid[i]*ghFluid[i]; p_rghFluid[i] = thermoFluid[i].p() - rhoFluid[i]*ghFluid[i];
fluidRegions[i].schemes().setFluxRequired(p_rghFluid[i].name()); fluidRegions[i].setFluxRequired(p_rghFluid[i].name());
radiation.set radiation.set
( (
@ -185,7 +185,7 @@ forAll(fluidRegions, i)
initialMassFluid[i] = fvc::domainIntegrate(rhoFluid[i]).value(); initialMassFluid[i] = fvc::domainIntegrate(rhoFluid[i]).value();
const dictionary& simpleDict = const dictionary& simpleDict =
fluidRegions[i].solution().solutionDict("SIMPLE"); fluidRegions[i].solutionDict().subDict("SIMPLE");
setRefCell setRefCell
( (

View File

@ -1,5 +1,4 @@
const dictionary& simple = const dictionary& simple = fluidRegions[i].solutionDict().subDict("SIMPLE");
fluidRegions[i].solution().solutionDict("SIMPLE");
const int nNonOrthCorr = const int nNonOrthCorr =
simple.getOrDefault<int>("nNonOrthogonalCorrectors", 0); simple.getOrDefault<int>("nNonOrthogonalCorrectors", 0);

View File

@ -1,5 +1,4 @@
const dictionary& simple = const dictionary& simple = mesh.solutionDict().subDict("SIMPLE");
mesh.solution().solutionDict("SIMPLE");
const int nNonOrthCorr = const int nNonOrthCorr =
simple.getOrDefault<int>("nNonOrthogonalCorrectors", 0); simple.getOrDefault<int>("nNonOrthogonalCorrectors", 0);

View File

@ -1,5 +1,5 @@
derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.C derivedFvPatchFields/turbulentTemperatureTwoPhaseRadCoupledMixed/turbulentTemperatureTwoPhaseRadCoupledMixedFvPatchScalarField.C
solid/solidRegionDiffNo.C ../solid/solidRegionDiffNo.C
chtMultiRegionTwoPhaseEulerFoam.C chtMultiRegionTwoPhaseEulerFoam.C
EXE = $(FOAM_APPBIN)/chtMultiRegionTwoPhaseEulerFoam EXE = $(FOAM_APPBIN)/chtMultiRegionTwoPhaseEulerFoam

View File

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

View File

@ -221,7 +221,7 @@ forAll(fluidRegions, i)
IOobject::READ_IF_PRESENT, IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE IOobject::NO_WRITE
), ),
dimensionedScalar(word::null, dimLength, Zero) dimensionedScalar("hRef", dimLength, Zero)
) )
); );
@ -278,14 +278,14 @@ forAll(fluidRegions, i)
phaseSystemFluid[i].phase1().thermo().p() phaseSystemFluid[i].phase1().thermo().p()
- phaseSystemFluid[i].phase1().thermo().rho()*ghFluid[i]; - phaseSystemFluid[i].phase1().thermo().rho()*ghFluid[i];
fluidRegions[i].schemes().setFluxRequired(p_rghFluid[i].name()); fluidRegions[i].setFluxRequired(p_rghFluid[i].name());
Info<< " Correcting initialMassFluid\n" << endl; Info<< " Correcting initialMassFluid\n" << endl;
initialMassFluid[i] = initialMassFluid[i] =
fvc::domainIntegrate(phaseSystemFluid[i].rho()).value(); fvc::domainIntegrate(phaseSystemFluid[i].rho()).value();
const dictionary& pimpleDict = const dictionary& pimpleDict =
fluidRegions[i].solution().solutionDict("PIMPLE"); fluidRegions[i].solutionDict().subDict("PIMPLE");
pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]); pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]);

View File

@ -13,11 +13,11 @@ forAll(cumulativeContErrIO, i)
"cumulativeContErr", "cumulativeContErr",
runTime.timeName(), runTime.timeName(),
"uniform", "uniform",
mesh.thisDb(), mesh,
IOobject::READ_IF_PRESENT, IOobject::READ_IF_PRESENT,
IOobject::AUTO_WRITE IOobject::AUTO_WRITE
), ),
dimensionedScalar(word::null, dimless, Zero) dimensionedScalar(dimless, Zero)
) )
); );
} }

View File

@ -1,5 +1,4 @@
const dictionary& pimpleDict = const dictionary& pimpleDict = mesh.solutionDict().subDict("PIMPLE");
mesh.solution().solutionDict("PIMPLE");
Switch faceMomentum Switch faceMomentum
( (

View File

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

View File

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

View File

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

View File

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

View File

@ -9,7 +9,7 @@ if (Y.size())
mesh, mesh,
fields, fields,
phi, phi,
mesh.schemes().div("div(phi,Yi_h)") mesh.divScheme("div(phi,Yi_h)")
) )
); );
} }
@ -44,7 +44,7 @@ if (Y.size())
fvOptions.constrain(YiEqn); fvOptions.constrain(YiEqn);
YiEqn.solve("Yi"); YiEqn.solve(mesh.solver("Yi"));
fvOptions.correct(Yi); fvOptions.correct(Yi);

View File

@ -112,7 +112,7 @@ forAll(fluidRegions, i)
IOobject::READ_IF_PRESENT, IOobject::READ_IF_PRESENT,
IOobject::NO_WRITE IOobject::NO_WRITE
), ),
dimensionedScalar(word::null, dimLength, Zero) dimensionedScalar("hRef", dimLength, Zero) // uses name
) )
); );
@ -189,7 +189,7 @@ forAll(fluidRegions, i)
// Force p_rgh to be consistent with p // Force p_rgh to be consistent with p
p_rghFluid[i] = thermoFluid[i].p() - rhoFluid[i]*ghFluid[i]; p_rghFluid[i] = thermoFluid[i].p() - rhoFluid[i]*ghFluid[i];
fluidRegions[i].schemes().setFluxRequired(p_rghFluid[i].name()); fluidRegions[i].setFluxRequired(p_rghFluid[i].name());
Info<< " Adding to radiationFluid\n" << endl; Info<< " Adding to radiationFluid\n" << endl;
radiation.set radiation.set
@ -260,8 +260,7 @@ forAll(fluidRegions, i)
); );
const dictionary& pimpleDict = const dictionary& pimpleDict =
fluidRegions[i].solution().solutionDict("PIMPLE"); fluidRegions[i].solutionDict().subDict("PIMPLE");
pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]); pimpleDict.readIfPresent("frozenFlow", frozenFlowFluid[i]);
rhoMaxFluid.set rhoMaxFluid.set

View File

@ -13,11 +13,11 @@ forAll(cumulativeContErrIO, i)
"cumulativeContErr", "cumulativeContErr",
runTime.timeName(), runTime.timeName(),
"uniform", "uniform",
mesh.thisDb(), mesh,
IOobject::READ_IF_PRESENT, IOobject::READ_IF_PRESENT,
IOobject::AUTO_WRITE IOobject::AUTO_WRITE
), ),
dimensionedScalar(word::null, dimless, Zero) dimensionedScalar(dimless, Zero)
) )
); );
} }

View File

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

View File

@ -1,5 +1,4 @@
const dictionary& pimple = const dictionary& pimple = mesh.solutionDict().subDict("PIMPLE");
mesh.solution().solutionDict("PIMPLE");
const int nCorr = const int nCorr =
pimple.getOrDefault<int>("nCorrectors", 1); pimple.getOrDefault<int>("nCorrectors", 1);

View File

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

View File

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

View File

@ -49,11 +49,11 @@ if (adjustTimeStep)
( (
min min
( (
min(maxCo/CoNum, maxDi/DiNum)*runTime.deltaTValue(), min(maxCo/CoNum, maxDi/DiNum)*runTime.deltaT().value(),
min(runTime.deltaTValue(), maxDeltaT) 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
( (
min(deltaTFluid, maxDeltaTSolid)*runTime.deltaTValue(), min(deltaTFluid, maxDeltaTSolid)*runTime.deltaT().value(),
maxDeltaT maxDeltaT
) )
); );
Info<< "deltaT = " << runTime.deltaTValue() << endl; Info<< "deltaT = " << runTime.deltaT().value() << endl;
} }
// ************************************************************************* // // ************************************************************************* //

View File

@ -57,7 +57,7 @@
), ),
solidRegions[i], solidRegions[i],
dimensionedSymmTensor(tkappaByCp().dimensions(), Zero), dimensionedSymmTensor(tkappaByCp().dimensions(), Zero),
fvPatchFieldBase::zeroGradientType() zeroGradientFvPatchSymmTensorField::typeName
) )
); );

View File

@ -1,5 +1,4 @@
const dictionary& pimple = const dictionary& pimple = mesh.solutionDict().subDict("PIMPLE");
mesh.solution().solutionDict("PIMPLE");
int nNonOrthCorr = int nNonOrthCorr =
pimple.getOrDefault<int>("nNonOrthogonalCorrectors", 0); pimple.getOrDefault<int>("nNonOrthogonalCorrectors", 0);

View File

@ -25,10 +25,10 @@
if (finalIter) 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); fvOptions.correct(h);
@ -39,7 +39,7 @@
if (finalIter) if (finalIter)
{ {
mesh.data().setFinalIteration(false); mesh.data::remove("finalIteration");
} }
} }
} }

View File

@ -34,7 +34,7 @@ if (!thermo.isotropic())
), ),
mesh, mesh,
dimensionedSymmTensor(tkappaByCp().dimensions(), Zero), dimensionedSymmTensor(tkappaByCp().dimensions(), Zero),
fvPatchFieldBase::zeroGradientType() zeroGradientFvPatchSymmTensorField::typeName
) )
); );
volSymmTensorField& aniAlpha = *taniAlpha; volSymmTensorField& aniAlpha = *taniAlpha;
@ -92,19 +92,21 @@ else
// Consider mesh flux to correct for mesh deformation // Consider mesh flux to correct for mesh deformation
bool meshFluxCorr(false); bool meshFluxCorr(false);
if (mesh.solutionDict().found("SIMPLE"))
{ {
const dictionary& solutionDict = mesh.solution().solutionDict(); meshFluxCorr =
mesh.solutionDict().subDict("SIMPLE").getOrDefault<bool>
const dictionary* subdict = nullptr; (
"meshFluxCorrection", false
if );
( }
((subdict = solutionDict.findDict("SIMPLE")) != nullptr) else if (mesh.solutionDict().found("PIMPLE"))
|| ((subdict = solutionDict.findDict("PIMPLE")) != nullptr) {
) meshFluxCorr =
{ mesh.solutionDict().subDict("PIMPLE").getOrDefault<bool>
meshFluxCorr = subdict->getOrDefault("meshFluxCorrection", false); (
} "meshFluxCorrection", false
);
} }
#include "createRadiationModel.H" #include "createRadiationModel.H"

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